加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > asp.Net > 正文

如何让ASP.NET AJAX通过GZip压缩发送JSON响应?

发布时间:2020-12-15 22:45:08 所属栏目:asp.Net 来源:网络整理
导读:我在IIS7中启用了压缩,除了ASP.NET AJAX构建的应用程序之外,它对所有响应的预期工作正常.我有一个向客户端提供数据的Web服务.当Web服务被直接调用时,它被正确压缩.但是,当通过ASP.NET AJAX调用时,JSON响应不会被压缩. 如何让ASP.NET AJAX通过GZip压缩发送JSO
我在IIS7中启用了压缩,除了ASP.NET AJAX构建的应用程序之外,它对所有响应的预期工作正常.我有一个向客户端提供数据的Web服务.当Web服务被直接调用时,它被正确压缩.但是,当通过ASP.NET AJAX调用时,JSON响应不会被压缩.

如何让ASP.NET AJAX通过GZip压缩发送JSON响应?

解决方法

IIS7使用内容编码来决定是否压缩响应(假设浏览器可以接受gzip).它们设置在applicationHost.config中,默认情况下是列表
<dynamicTypes>
     <add mimeType="text/*" enabled="true" />
     <add mimeType="message/*" enabled="true" />
     <add mimeType="application/x-javascript" enabled="true" />
     <add mimeType="*/*" enabled="false" />
</dynamicTypes>

如果直接调用Web服务,则XML响应具有内容类型的text / xml,它被压缩.当由AJAX调用时,JSON响应具有application / json的内容类型,因此它不被压缩.将以下内容添加到applicationHost.config应该会修复…

<add mimeType="application/json" enabled="true" />

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读