gpt4 book ai didi

.net - 压缩为 GZip WCF 请求(SOAP 和 REST)

转载 作者:行者123 更新时间:2023-12-03 01:58:34 25 4
gpt4 key购买 nike

我有一个托管在 Windows Azure 上的 .NET 3.5 Web 应用程序,它公开了多个 WCF 端点(SOAP 和 REST)。端点通常接收比它们提供的数据多100倍(上传的数据较多,下载的数据少得多)。

因此,我愿意利用 HTTP GZip 压缩,但不是从服务器的角度,而是从客户端的角度,发送压缩请求(返回压缩响应就可以了,但无论如何不会带来太多 yield )。

下面是客户端用来激活 WCF 的 C# 代码片段:

var binding = new BasicHttpBinding();
var address = new EndpointAddress(endPoint);

_factory = new ChannelFactory<IMyApi>(binding, address);
_channel = _factory.CreateChannel();

知道如何调整行为以便可以发出压缩的 HTTP 请求吗?

最佳答案

如果您想使用商业组件,请尝试 this 。它为请求和响应提供基于标准的 HTTP 压缩。我不确定Azure是否支持解压缩压缩请求,如果不支持,那么您也可以在Azure上使用它来提供解压缩。这是根据需要修改的绑定(bind):

using Noemax.WCFX.Channels;

var binding = new BasicHttpBinding();
var address = new EndpointAddress(endPoint);

ContentNegotiationBindingElement contentNegotiation = new ContentNegotiationBindingElement();
contentNegotiation.CompressionMode = SmartCompressionMode.Optimistic;

binding = contentNegotiation.PlugIn(binding);

_factory = new ChannelFactory<IMyApi>(binding, address);
_channel = _factory.CreateChannel();

关于.net - 压缩为 GZip WCF 请求(SOAP 和 REST),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2749227/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com