配置Json的IIS动态压缩

时间:2014-09-17 09:16:15

标签: asp.net json iis asp.net-web-api iis-8

我在测试Json输出的dynamicCompression时遇到问题。 Application是一个MVC / WEBAPI5应用程序,我正在调查的请求是Get WebAPI请求。

我让Json回来但没有被压缩。

我已按照How can I get gzip compression in IIS7 working?

中的步骤在IIS8中配置Json的动态压缩

 <httpCompression directory="%SystemDrive%\inetpub\temp\IIS Temporary Compressed Files">
        <scheme name="gzip" dll="%Windir%\system32\inetsrv\gzip.dll" />
        <dynamicTypes>
            <add mimeType="text/*" enabled="true" />
            <add mimeType="message/*" enabled="true" />
            <add mimeType="application/x-javascript" enabled="true" />
            <add mimeType="application/javascript" enabled="true" />
            <add mimeType="application/json" enabled="true" />
            <add mimeType="application/json; charset=utf-8" enabled="true" />
            <add mimeType="*/*" enabled="false" />
        </dynamicTypes>
        <staticTypes>
            <add mimeType="text/*" enabled="true" />
            <add mimeType="message/*" enabled="true" />
            <add mimeType="application/javascript" enabled="true" />
            <add mimeType="application/atom+xml" enabled="true" />
            <add mimeType="application/xaml+xml" enabled="true" />
            <add mimeType="*/*" enabled="false" />
        </staticTypes>
    </httpCompression>

我安装了压缩模块,我可以在FailedRequestTracelog中看到以下特定调用的以下内容: enter image description here

你可以在我的fiddler跟踪中看到它似乎确实是一个匹配的类型,尽管它说FailedRequestTrace输出中不是这种情况。 enter image description here

有什么想法吗?

1 个答案:

答案 0 :(得分:6)

你可以看一下我在博客文章中关于在Web API中进行压缩的一种方法。 http://blogs.msdn.com/b/kiranchalla/archive/2012/09/04/handling-compression-accept-encoding-sample.aspx

如果您想使用IIS进行压缩,请查看以下帖子: https://stackoverflow.com/a/17331627/1184056