测试中发现webclient 比浏览器加载页面慢的一个问题;原因WebClient 支持 gzip, deflate,但是未设置

解决方案:

class WebClientEx : WebClient
{
int timeout = 60;
public WebClientEx(int timeout = 60)
{
this.timeout = timeout * 1000;
this.Encoding = Encoding.UTF8;   
}
protected override WebRequest GetWebRequest(Uri address)
{
HttpWebRequest request = (HttpWebRequest)base.GetWebRequest(address);
request.AutomaticDecompression = DecompressionMethods.GZip | DecompressionMethods.Deflate;
request.Timeout = timeout;
request.ReadWriteTimeout = timeout;
return request;
}
}

 

另HttpClient中加入支持gzip\deflate:

 

var handler = new HttpClientHandler() { AutomaticDecompression = DecompressionMethods.GZip | DecompressionMethods.Deflate };

 

var httpClient = new HttpClient(handler);

 

相关文章:

  • 2022-12-23
  • 2021-08-30
  • 2021-08-03
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2021-05-03
  • 2021-05-17
猜你喜欢
  • 2021-10-17
  • 2022-01-22
  • 2022-12-23
  • 2021-07-20
  • 2021-11-27
  • 2021-04-03
  • 2021-06-12
相关资源
相似解决方案