Asp.net WCF gzip压缩?
我需要压缩我的WCF响应。 在谷歌搜索了几次之后,我发现Asp.net WCF gzip压缩?,asp.net,wcf,compression,gzip,discountasp,Asp.net,Wcf,Compression,Gzip,Discountasp,我需要压缩我的WCF响应。 在谷歌搜索了几次之后,我发现 我需要在iis7上启用压缩 我需要在applicationhost.config中添加一些条目 我的wcf托管在discountasp.net上。在控制面板中,我没有找到任何启用压缩的选项。 此外,applicationhost.config位于“C:\Windows\System32\Inetsrv\config\applicationhost.config”目录中 在共享托管环境中,我无法访问此目录 我的问题是,如果我的上述观察是
- 我需要在iis7上启用压缩
- 我需要在applicationhost.config中添加一些条目
我试过了,但运气不好。在Fiddler中的响应头中,我看不到任何压缩。一种替代方法是实现一个HttpModule,该模块将根据内容类型拦截响应,并使用GZipStream类动态压缩输出 有一个完整的例子,我已经在生产中成功地使用了这种方法。您只需更改Web.config以注册http模块:
<httpModules>
<add name="ScriptModule" type="System.Web.Handlers.ScriptModule, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"/>
<add name="JsonCompressionModule" type="JsonCompressionModule"/>
</httpModules>
该示例对JSON响应执行此操作,但没有任何东西可以阻止您对XML响应执行相同的操作 一种替代方法是实现一个HttpModule,该模块将使用GZipStream类拦截基于内容类型的响应并动态压缩输出 有一个完整的例子,我已经在生产中成功地使用了这种方法。您只需更改Web.config以注册http模块:
<httpModules>
<add name="ScriptModule" type="System.Web.Handlers.ScriptModule, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"/>
<add name="JsonCompressionModule" type="JsonCompressionModule"/>
</httpModules>
该示例对JSON响应执行此操作,但没有任何东西可以阻止您对XML响应执行相同的操作 谢谢你的回复。如果我在我的web.config中添加,我会得到错误。HTTP错误500.22-内部服务器错误检测到一个ASP.NET设置不适用于集成托管管道模式。您好,您解决问题了吗?请尝试将应用程序池更改为经典模式。如果无法解决您的问题,请尝试联系他们的支持团队。:)谢谢你的回复。如果我在我的web.config中添加,我会得到错误。HTTP错误500.22-内部服务器错误检测到一个ASP.NET设置不适用于集成托管管道模式。您好,您解决问题了吗?请尝试将应用程序池更改为经典模式。如果无法解决您的问题,请尝试联系他们的支持团队。:)