flurl相关内容

为什么Flurl.Http DownloadFileAsync/Http客户端GetAsync需要这么长时间才能取消任务

在编写从服务器并行下载图像的类时(使用由DataFlow TPL库支持的消费者/生产者模式),使用ActionBlock和Flurl.Http工具方法DownloadFileAsync,我已经意识到取消操作需要很长时间。由于所有下载操作都共享一个CancellationToken,我预计所有任务都会立即(或几乎)取消。实际上,如果我产生大量并行下载,取消所有任务/线程可能需要几分钟时间。我已经解决 ..

Flurl;HttpTest:单元测试在全部运行时失败,但在单独运行时通过

更新:HttpTest不是线程安全的,根据项目的GitHub issue。在问题解决之前,使用HttpTest的测试无法并行运行。 我有一对使用Flurl和xUnit的非常奇怪的测试,当在VS测试资源管理器中全部运行时,它们将失败,但如果单独运行,则会通过。我无论如何也看不到这两个人有什么关系,但他们确实有关系。 我已将它们从我的项目中提取到一个新项目中,但问题仍然存在。我将它们捆绑到 ..
发布时间:2022-08-22 19:21:58 C#/.NET

HTTP请求可以在Postman中工作,但不能在C#代码中工作

我想用C#执行一个简单的HTTP请求,但有些东西不起作用,我得到的只是403 Forbidden状态代码。 当我尝试在Postman中执行相同的请求时,一切正常。 我试图运行Fiddler,查看邮递员发送的所有报头。我都复制粘贴了,但在C#代码发送的请求中仍然有403 Forbidden。 C#代码(使用https://flurl.dev): public static void ..
发布时间:2022-02-23 09:46:57 C#/.NET

如何在Flurl.Http中使用Polly?

当前我有此请求: 等待网址.SetQueryParams(queryString).SetClaimsToken().GetJsonAsync() 我想开始使用Polly( https://github.com/App-vNext/Polly )现在可以处理重试并提供更好的用户体验.例如,由于网络连接错误,第一次尝试时不会“挂断"用户.这是我尝试使用的示例: int [] htt ..
发布时间:2021-05-15 19:04:22 C#/.NET

如何停止出站HTTP连接超时

背景: 我目前正在使用以下规范在Azure中托管ASP.NET应用程序: ASP .Net Core 2.2 使用Flurl进行HTTP请求 Kestrel Web服务器 Docker(Linux-mcr.microsoft.com/dotnet/core/aspnet:2.2运行时) 有关P2V2层应用程序服务计划的Azure App Service 我有几个在该服务上 ..
发布时间:2020-06-15 18:54:53 其他开发

使用.NET Flurl/HttpClient设置每个请求的代理(或旋转代理)

我知道,使用 Flurl HTTP .NET库,我可以使用自定义 HttpClientFactory ,但是有一种方法可以为每个请求选择自定义代理? 使用许多其他编程语言,设置代理就像设置选项一样容易.例如,使用Node.js,我可以做到: const request = require('request'); let opts = { url: 'http://random.org' ..
发布时间:2020-06-15 18:54:50 C#/.NET

从Flurl.Http v2.0.1中的请求取回cookie

使用Flurl.Http v1.2时,我们具有以下代码: 1. var cookieJar = new CookieContainer(); 2. var url = baseUrl.AppendPathSegment("api/auth/login"); 3. var client = url.EnableCookies(); 4. ((HttpClientHandler)client.H ..
发布时间:2020-06-15 18:54:45 C#/.NET

Flurl和不受信任的证书

目前,我从事Flurl的研究,并尝试通过https与API联系(我在实验室中). 因此该证书无效,并且Flurl无法继续工作:/ 这是我的错误消息: Unhandled Exception: System.AggregateException: One or more errors occurred. (Call failed. The SSL connection could not ..
发布时间:2020-06-15 18:54:42 C#/.NET

无法设置Content-Type标头

我无法在HttpClient上设置Content-Type. 我遵循了这个问题:如何做您为HttpClient请求设置了Content-Type标头? 但是仍然没有运气. String rcString = JsonConvert.SerializeObject(new RoadsmartChecks() { userguid = user_guid, coords = coordinate ..
发布时间:2020-06-15 18:54:36 C#/.NET

ASP.Net Core 2.1和IHttpClientFactory中的Flurl客户端生存期

Flurl指出推荐使用单例客户端模式: HttpClient旨在实例化一次,并在应用程序的整个生命周期内重复使用.特别是在服务器应用程序中,为每个请求创建一个新的HttpClient实例将耗尽繁重负载下可用的套接字数量.这将导致SocketException错误. 但是自从Asp.Net Core 2.1以来, Net中HttpClient生存期的更新规则核心2.1 . 当您使用 ..
发布时间:2020-06-15 18:54:31 其他开发

如何在Flurl中将代理用于Web请求?

我使用Flurl客户端有一个简单的发布请求,我想知道如何使用代理使用IP,端口,用户名和密码等信息发出此请求. string result = await atc.Request(url) .WithHeader("Accept", "application/json") .WithHeader("Content-Type", "application/x-www-form- ..
发布时间:2020-06-15 18:54:28 C#/.NET

使用Flurl设置默认的Polly策略

我目前正在一起使用Polly和Flurl,但是我有一个通用的重试策略,必须将其添加到每个请求中.我注意到Polly允许您使用AddPolicyHandler(...)设置默认值,但这需要IHttpClientBuilder,而且我看不到任何从Flurl掌握此方法的方法. 我认为过载DefaultHttpClientFactory可能是解决方法,但这只能让我访问HttpClient,而不能访问 ..
发布时间:2020-06-15 18:54:26 其他开发

如何将Windows身份验证与Flurl库一起使用?

Flurl 具有执行OAuth和基本身份验证的方法: await url.WithBasicAuth("username", "password").GetJsonAsync(); await url.WithOAuthBearerToken("mytoken").GetJsonAsync(); 但是如何使用当前登录的用户执行Windows身份验证?构建在Flurl之上的HttpClie ..
发布时间:2020-06-15 18:54:24 C#/.NET

如何在Flurl HttpClient中保留标题

我在.NET Http客户端上使用Furl.Http包装器.对于每个请求,我的API都需要发送一个User-Agent和一个Authorization标头. 我想设置一次,而不是每次都要声明. 我想我可以做的是创建一个FlurlClient实例,并在其上设置标头,然后在每个请求之前重设ResetToRoot,如以下示例代码所示: var fc = new FlurlCli ..
发布时间:2020-05-29 01:53:28 其他开发

是否可以在OWIN TestServer中使用Furl.Http?

我正在使用OWIN TestServer,它为我提供了一个HttpClient来执行对测试服务器的内存调用.我想知道是否有一种方法可以传入现有的HttpClient供Flurl使用. 解决方案 更新: 以下大部分信息在Flurl.Http 2.x中不再相关.具体来说,Flurr的大多数功能都包含在新的FlurlClient对象(用于包装HttpClient)中,而不包含在自定义消息处理程序 ..
发布时间:2020-05-23 18:57:51 其他开发