HTTP压缩 - 我可以配置客户端来压缩发送到服务器的数据吗?

Lea*_*ide 3 .net compression iis soap http

我正在使用IIS 7作为我的应用程序的Web服务器.如果我在服务器中启用动态内容压缩,这是否也可以让客户端将压缩数据发送到服务器,如果可以的话?

我的意思是,我的应用程序使用SOAP Web服务,客户端通常会向服务器发送大块数据.客户端是用C#/ .NET编写的.我可以在Web引用/ serice引用中进行任何类型的配置,以告诉它们在将内容发送到IIS之前压缩内容吗?我是否必须在IIS中进行任何类型的配置才能使其正常工作?

提前致谢

Bri*_*ndy 7

HTTP压缩由客户端指定具有Accept-Encoding其接受的压缩类型的标头:

Accept-Encoding:compress,gzip

然后,服务器会看到此内容,并将根据此处定义接受编码规则选择其中一种编码类型.响应将采用其中一个可接受的值或身份编码.


要求:

通常,请求不能首先被压缩,因为通信以请求开始.HTTP客户端可以发送选项请求,如果您可以控制客户端和服务器源代码,则可以使用该请求.

OPTIONS方法表示请求有关Request-URI标识的请求/响应链上可用的通信选项的信息.该方法允许客户端确定与资源相关联的选项和/或要求,或服务器的能力,而不暗示资源动作或启动资源检索.

这方面的一个例子是用于SVN的apache模块,以及一个svn客户端.可以将它们配置为对请求数据执行HTTP压缩.

请参阅RFC 2616:第9节