Windows Phone ASP.NET Web Service 压缩

4
我正在开发一款适用于Windows Phone和iOS的应用程序,它需要调用一个ASP.NET Web服务(SOAP),这个Web服务是由我开发的。由于XML的语言冗长,通过Web服务下载的数据量相对较大。因此,我想使用IIS的ISAPI压缩模块来压缩服务器对我的SOAP调用的响应。在iOS上,我使用wsdl2objc,效果很好。该请求中包含Accept-Encoding: gzip,deflate头。IIS可以正确地压缩响应,一切正常。
在Windows Phone上,我使用自动生成的SOAP包装器,并将Web服务添加为服务引用。这也(实际上)完全正常运行。应用程序能够正常工作,但生成的代码发送的头是Accept-Encoding: identity。通过网络得知,生成的代码使用支持gzip内容的WebRequests。
有没有一种被接受的方式可以在手机端添加Accept-Encoding: gzip头部,或从服务器返回一个压缩的Content-Encoding: gzip响应?
提前感谢!
注意:我正在使用的是ASP.NET Web服务,而不是ASP.NET WCF服务。
2个回答

0
原来 WP7 的 SOAP 实现中所包含的 HTTP 请求魔法,对于 GZIP/DEFLATE 压缩响应(或请求)完全没有支持。我将不得不自己编写一个 SOAP 类生成器解决方案,并使用 WebRequest 类来实现它。

-1

这不是我要解决的问题。WebRequest类与GZIP正常工作。生成的代码根本不使用WebRequest,而是使用在运行时中被压缩的某些解决方案。 - Matthew Kennedy

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接