restsharp accept-encoding禁用压缩

在特定情况下,我需要能够在requst /响应中禁用压缩.

使用Firefox RestClient我能够将一些xml发布到Web服务并使用单个头参数“Accept-Encoding”成功获得一些响应xml:“”
如果我没有设置这个头,响应体会回复压缩响应体中的一些二进制数据(这就是为什么我要在响应中禁用gzip)

现在在我的应用程序中使用相同的标头值(在C#中使用RestSharp),我仍然得到二进制数据(gzip)作为响应.

有人可以解释一下吗?它在RestSharp中是否受支持?

最佳答案 RestSharp不支持禁用压缩.

如果你看看Http.Sync.cs第267行中的source code(假设同步请求,async在Http.Async.cs第424行中有相同的代码重复)

webRequest.AutomaticDecompression = DecompressionMethods.Deflate | DecompressionMethods.GZip | DecompressionMethods.None;

也就是说,Restsharp用于进行http调用的底层WebRequest具有硬编码的压缩选项.有一个open issue记录了这一点

点赞