Как сжимать HTTP-запросы из WCF .NET на транспортном уровне?

Мне удалось включить сжатие входящих HTTP-запросов в ASP.NET (т.е. сжатие HTTP запросов , а не только ответов), но теперь я проблемы на стороне клиента (приложение C # / .NET 4.0).

Я хотел бы:

  • добавить HTTP-заголовок Content-Encoding: gzip
  • сжать тело HTTP с помощью GZip

для всех исходящие HTTP-запросы, отправляемые каналом WCF.

Решения, которые пока не работают :

  • с IClientMessageInspector Я могу сжать сообщение, но он не учитывает все тело HTTP, поскольку конверт не сжимается.
  • То же самое для настраиваемого кодировщика сообщений, сжимайте сообщение, а не конверт, не влияет на заголовки HTTP-запроса.

Есть идеи, как имитировать поведение IHttpModule (см. начальный ответ) на стороне клиента?

7
задан Community 23 May 2017 в 11:58
поделиться