http - 批量请求 MIME 类型的 IIS 压缩设置 'multipart/mixed'

标签 http iis compression asp.net-web-api

我有一个网络 API 服务,可以接受来自网络应用程序的批量请求。我已在 web.config 中定义要压缩的 MIME 类型“multipart/*”,但响应未压缩。我不确定为什么它不能像正常的单个请求一样工作(不是作为多部分/混合发送的,压缩得很好)。

 <httpCompression>
  <dynamicTypes>
    <clear />
    <add enabled="true" mimeType="text/*" />
    <add enabled="true" mimeType="application/javascript" />
    <add enabled="true" mimeType="application/json" />
    <add enabled="true" mimeType="multipart/*" />
    <add enabled="false" mimeType="*/*" />
  </dynamicTypes>
  <staticTypes>
    <clear />
    <add enabled="true" mimeType="text/*" />
    <add enabled="true" mimeType="application/javascript" />
    <add enabled="true" mimeType="application/json" />
    <add enabled="true" mimeType="multipart/*" />
    <add enabled="false" mimeType="*/*" />
  </staticTypes>
</httpCompression>

实际的响应 mime 类型以 'multipart/mixed' 开头,但根据附加到它的边界 ID 而变化。

Content-Type:multipart/mixed; boundary="0bb00cbc-234a-4264-87dc-60109719e79f"

请求正在发送一个 Accepted-Encoding header ,所以我认为问题不存在,我认为这与 IIS 匹配 mime 类型有关。

任何想法都会很棒!

谢谢,

乔恩

最佳答案

我也遇到过这个问题,并且能够通过使用这个 NuGet 包来解决这个问题: https://www.nuget.org/packages/Microsoft.AspNet.WebApi.MessageHandlers.Compression/

这也支持批量响应的压缩。

关于如何使用它的信息在 github 页面上: https://github.com/azzlack/Microsoft.AspNet.WebApi.MessageHandlers.Compression

关于http - 批量请求 MIME 类型的 IIS 压缩设置 'multipart/mixed',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33007748/

相关文章:

mongodb - 以压缩格式存储mongodb数据

python-3.x - python3 http.server 记录如何

c# - 使用 HTTPWebRequest 获取远程页面的标题

sql-server - 防火墙之外的客户端的 Kerberos 委派

c# - Sharepoint 事件接​​收器安全异常

c# - .NET 中的 DeflateStream 4GB 限制

c# - 需要一些帮助将此 C 代码移植到 C#

http - 我应该在 OAuth 2 回调中验证 HTTP Referer 吗?

node.js - Elasticsearch查询返回具有给定ID的文档

iis - 如何在 IIS 7 上配置 CGI?