.NetCore HttpClient向Accept Encoding添加了不必要的项
本文关键字:不必要 添加 Encoding HttpClient Accept NetCore | 更新日期: 2023-09-27 17:58:23
我正在尝试将一个项目迁移到.Net Core,并且我使用HttpWebRequest实现了它。现在在.Net Core上,我设法更改了代码,但当我通过Fiddler检查原始请求时,我的Accept Encoding是
Accept-Encoding: identity, gzip, deflate
而不是
Accept-Encoding: identity
我试着重置标题,删除它们,但在我调用之前,它们既不存在于客户端上,也不存在于请求中
client.SendAsync(request);
如果由于某种原因,由于限制而无法修复这些问题,是否有方法创建原始HTTP请求?
HttpClientHandler.AutomaticDecompression
正在添加标头。当您关闭自动解压缩时,"Accept Encoding"标头将为空。
var handler = new HttpClientHandler();
handler.AutomaticDecompression = System.Net.DecompressionMethods.None;
var client = new HttpClient(handler);
var result = client.GetStringAsync("http://headers.cloxy.net/request.php");
Fiddler验证:
GET http://headers.cloxy.net/request.php HTTP/1.1
Connection: Keep-Alive
Host: headers.cloxy.net
一个有趣的事实是,我的ISP通过透明代理强制我的流量,无论我的请求如何,Accept-Encoding: gzip
总是由另一端接收。