HttpClient 默认将其作为“Keep-Alive”包含在内。我已经能够使用 httpClient.DefaultRequestHeaders.ConnectionClose = true;
将其设置为“关闭”,但如何完全忽略它?
最佳答案
我以前见过这个问题,据我所知,没有人 ( not even the great Jon Skeet ) 想出一种方法来避免在 HttpClient
中发送 Connection
header 或 HttpWebRequest
世界,无需完全重新发明轮子。它发生在杂草深处的某个地方。
ConnectionClose
可以为 null,但在 HttpClient.DefaultRequestHeaders
和 HttpRequestMethod.Headers
上将其设置为 null 仍会导致 Connection : 正在发送 Keep-Alive
header 。
总结:
HttpRequestHeaders.ConnectionClose = true
=>连接:关闭
HttpRequestHeaders.ConnectionClose = false
=>Connection: Keep-Alive
HttpRequestHeaders.ConnectionClose = null
=>Connection: Keep-Alive
HttpWebRequest.KeepAlive = true
=>连接:Keep-Alive
HttpWebRequest.KeepAlive = false
=>连接:关闭
(HttpWebRequest.KeepAlive
不可为空)
关于c# - 如何防止 HttpClient 发送连接 header ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47411524/