首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >gzip HttpWebRequest

gzip HttpWebRequest
EN

Stack Overflow用户
提问于 2010-01-14 04:17:15
回答 3查看 1.5K关注 0票数 4

我通过HttpWebRequest提交HTTP POST请求,其中包含大量内容。我想用gzip压缩消息内容。这个是可能的吗?

是否必须将IIS 7配置为处理压缩内容?它已经被配置为服务压缩响应。

我尝试添加Content-Encoding = gzip头文件,并写入封装在GZipStream中的请求流,但服务器返回504 (GatewayTimeout),这似乎很奇怪。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2010-01-14 04:40:49

绝大多数web服务器不支持压缩的请求正文。可以将mod_deflate配置为在Apache上支持它,但实际上很少这样做(因为zip-bomb很容易成为潜在的DoS攻击)。我不知道IIS解决方案。

如果您正在与自己的服务器对话,那么当然没有什么可以阻止您在应用程序级别进行压缩。如果你必须传递一个标准的表单类型让后端读取,你应该选择multipart/form-data,因为URL编码会使压缩内容参数的二进制数据变得臃肿。

票数 1
EN

Stack Overflow用户

发布于 2010-01-14 04:27:54

我不相信IIS7支持GZIP请求,开箱即用。这就是为什么。在我的IIS7机器上,gzip.dll不导出解压缩方法。

代码语言:javascript
复制
c:\Windows\System32\inetsrv>c:\vc9\bin\dumpbin.exe  -exports gzip.dll
Microsoft (R) COFF/PE Dumper Version 9.00.30729.01
Copyright (C) Microsoft Corporation.  All rights reserved.


Dump of file gzip.dll

File Type: DLL

  Section contains the following exports for gzip.dll

    00000000 characteristics
    47919400 time date stamp Sat Jan 19 01:09:04 2008
        0.00 version
           1 ordinal base
           6 number of functions
           6 number of names

    ordinal hint RVA      name

          1    0 0000242D Compress
          2    1 00002E13 CreateCompression
          3    2 000065AE DeInitCompression
          4    3 000012EE DestroyCompression
          5    4 0000658D InitCompression
          6    5 000065B6 ResetCompression

  Summary

        1000 .data
        1000 .reloc
        1000 .rsrc
        6000 .text

我认为这代表了gzip.dll的变化。我相信在以前的gzip.dll版本中,有12个导出的方法,包括6个解压方法。

票数 4
EN

Stack Overflow用户

发布于 2020-02-02 22:45:40

我得到了同样的错误。

在web.config中添加executionTimeout即可解决:

代码语言:javascript
复制
<httpRuntime maxRequestLength="1048576" executionTimeout="300" />

ExecutionTimeout-启用秒数...

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2059919

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档