编程语言
首页 > 编程语言> > c# – 如何跨多个请求重用HTTP连接?

c# – 如何跨多个请求重用HTTP连接?

作者:互联网

我正在制作一个应用程序,不断扫描远程网站的任何变化.
我正在使用System.Net.Http.HttpClient,但我注意到它可能不支持重用连接.

请求一个接一个地执行,但通常需要大约250毫秒才能完成.当我打开Fiddler并打开“重用服务器连接”选项时,它会降低到每个请求150毫秒.

我想我的HttpClient配置错误,但我在MSDN参考资料中找不到任何可以帮助我解决问题的信息.

解决方法:

对于HttpWebRequest,您需要设置KeepAlive property.

HttpClient似乎没有提供类似的属性,但它可能会尝试默认使用keepalive.请求和响应标头是什么? (如果服务器显式发送Connection:Keep-alive响应头,HTTP / 1.0仅支持keepalive.

Connection keep-alive not working with System.Net.Http.HttpClient on certain hosts可能是相关的.

标签:c,http,dotnet-httpclient,fiddler
来源: https://codeday.me/bug/20190708/1402980.html