2010-04-16 24 views
3

我使用IIS 7作为我的应用程序的Web服务器。如果我在服务器中启用动态内容压缩,这是否也可以使客户端将压缩数据发送到服务器(如果可以)?HTTP压缩 - 我可以配置客户端压缩发送到服务器的数据吗?

我的意思是,我的应用程序使用SOAP webservices,并且客户端通常会向服务器发送大量数据。客户端用C#/ .NET编写。为了让他们在将内容发送到IIS之前压缩内容,是否有任何配置可以在Web引用/ serice引用中完成?我是否必须在IIS中进行任何类型的配置才能使其工作?

预先感谢

回答

7

HTTP压缩的工作原理是在客户端指定与它接受压缩类型的Accept-Encoding头:

接受编码:压缩,gzip的

然后,服务器看到这一点,并将根据accept encoding rules defined here选择其中一种编码类型。响应将在可接受的值或身份编码之一中。


要求:

通常的请求不能进来第一压缩,因为通信的方式与请求时开始。一个HTTP客户端可以发送一个选项请求,并使用它,如果你有控制客户端和服务器源代码,你可以这样做。

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

一个例子是SVN的apache模块,也是一个svn客户端。它们可以配置为对请求数据执行HTTP压缩。

See RFC 2616: Section 9

+0

原来我错了,在这个意义上,数据传输是不是我的应用程序的瓶颈。所以,我决定不再担心发送压缩请求。但是,谢谢你的有用答案。 – 2010-04-19 14:00:53