我有一个老式的 .NET ASMX (SOAP/XML) Web 服务,用于将数据上传到具有非常简单和轻量级的 ack 响应的中央服务。这已经存在多年并且运行良好。
但是,现在使用情况发生了一些变化,并且正在发送的有效负载数据的整体大小已经增加到不再可行/可靠地发送未压缩数据的程度。
所以问题是:如何对从客户端发送到 Web 服务的数据启用压缩。
谷歌搜索了无数关于压缩来自服务的响应的页面,但是我需要压缩请求。
请记住,这必须保留为 ASMX,并且必须保留在 .NET 2 上
编辑:作为一项临时措施,我在发送之前手动压缩(GZIP)有效负载数据,然后在另一端解压缩。这可行,但我更喜欢“传统传输级别”压缩。
例如:
...
<soap:Body>
<MessageData id="1234">
<SenderIdentifier>foobar</SenderIdentifier>
<Payload>....This is what is compressed (GZIP)....</Payload>
</MessageData>
</soap:Body>
....