Включить Gzip в .Net Core Web Service Client - PullRequest
0 голосов
/ 04 июня 2019

Я ищу способ включить сжатие gzip в клиенте веб-службы в ядре .net.

Я сгенерировал несколько клиентских классов из файлов схемы, используя dotnet-svcutil версии 1.0.4, и поместилссылки в проекте стандарта .net 2.0.Клиенты используются для использования веб-службы проектом .net core 2.2.Я использую BasicHttpBinding для привязки конечной точки, и все работает нормально, пока не требуется включение gzip.Я обнаружил, что эта часть недостаточно хорошо документирована, и я не могу получить большую помощь в поиске решений в сообществах.

        public static void ConfigureClient<T>(this ClientBase<T> client, int timeoutMs)
            where T : class 
        {
            var binding = new BasicHttpBinding(BasicHttpSecurityMode.Transport);
            binding.OpenTimeout = binding.CloseTimeout = 
            binding.SendTimeout = binding.ReceiveTimeout = TimeSpan.FromMilliseconds(timeoutMs);
            binding.MaxReceivedMessageSize = binding.MaxBufferPoolSize = binding.MaxBufferSize = 2147483647;
            binding.ReaderQuotas.MaxArrayLength =
            binding.ReaderQuotas.MaxStringContentLength =
            binding.ReaderQuotas.MaxBytesPerRead =
            binding.ReaderQuotas.MaxNameTableCharCount = 2147483647;
            binding.TextEncoding = Encoding.UTF8;
            binding.Security.Transport.ClientCredentialType = HttpClientCredentialType.Basic;

            client.Endpoint.Binding = binding;
        }

Поэтому я прошу у ваших подсказок предложения / документы, как мне включить gzip в основных клиентах .netФОС?Заранее спасибо.

...