我有一个MVC 5应用程序(C#)托管在Microsoft上。该应用程序从服务器向客户端返回一些相当大的JSON文档。有人知道如何打开HTTP压缩,以便将这些文档压缩到客户端吗?我在谷歌上搜索过,但是我找不到至少3-4岁的东西。
我想另一种选择是使用压缩实用程序压缩JSON文档。我尝试过LZ-String,但我似乎无法使用C#版本在服务器上压缩文档,无法使用JavaScript版本在客户端上解压缩,并且无法识别得到的JSON文档。
发布于 2014-09-05 14:19:51
要启用MVC控制器操作的JsonResult压缩,需要启用来自web.config文件的动态压缩:
<system.webServer>
<urlCompression doDynamicCompression="true" />
<httpCompression>
<dynamicTypes>
<add mimeType="application/json" enabled="true" />
<add mimeType="application/json; charset=utf-8" enabled="true" />
</dynamicTypes>
<staticTypes>
<add mimeType="application/json" enabled="true" />
<add mimeType="application/json; charset=utf-8" enabled="true" />
</staticTypes>
</httpCompression>
</system.webServer> 在Azure WebSites的空闲层上发布了一个具有上述配置的工作示例,可以使用简单的HTTP请求进行测试:
GET https://double.azurewebsites.net/Home/SomeJson HTTP/1.1
User-Agent: Fiddler
Accept-Encoding: gzip, compress
Host: double.azurewebsites.net注意,Accept-Encoding头绝对必须触发服务器端压缩。还请注意mime类型application/json; charset=utf-8,它是由ASP.NET MVC5 JsonResult提供的mime类型。
https://stackoverflow.com/questions/25684575
复制相似问题