Tôi gặp sự cố khi nhận nội dung động đến từ một handler tùy chỉnh để được nén bởi IIS 7.IIS7 nén nội dung động từ handler tùy chỉnh
xử lý của chúng tôi spits ra dữ liệu json (Content-Type: application/json; charset = utf-8) và trả lời url giống như sau: domain.com/example.mal/OperationName?Param1=Val1 & Param2 = Val2
Trong IIS 6, tất cả những gì chúng tôi phải làm là đặt chỉnh sửa MetaBase.xml và trong phần tử IIsCompressionScheme đảm bảo rằng thuộc tính HcScriptFileExtensions có phần mở rộng tùy chỉnh 'mal' được bao gồm trong nó.
Nén tĩnh và động được bật ở cấp máy chủ và trang web. Tôi có thể xác nhận rằng các trang .aspx bình thường được nén chính xác. Nội dung duy nhất tôi không thể nén là nội dung đến từ trình xử lý tùy chỉnh.
Tôi đã thử các configs sau không thành công:
<handlers>
<add name="MyJsonService" verb="GET,POST" path="*.mal" type="Library.Web.HttpHandlers.MyJsonServiceHandlerFactory, Library.Web" />
</handlers>
<httpCompression>
<dynamicTypes>
<add mimeType="application/json" enabled="true" />
</dynamicTypes>
</httpCompression>
_
<httpCompression>
<dynamicTypes>
<add mimeType="application/*" enabled="true" />
</dynamicTypes>
</httpCompression>
_
<staticContent>
<mimeMap fileExtension=".mal" mimeType="application/json" />
</staticContent>
<httpCompression>
<dynamicTypes>
<add mimeType="application/*" enabled="true" />
</dynamicTypes>
</httpCompression>
Cảm ơn trước sự giúp đỡ.
+1, nhưng bạn nên đề cập đến sự khác biệt mà 'charset = utf-8' tạo ra, cần thiết vì lỗi phân tích cú pháp IIS được đề cập trong chuỗi bạn liên kết tới – orip