Сжатие запроса веб-службы

У меня есть веб-сервис и клиент в c # / dotnet, и я использую EnableDecompression для сжатия gzip ответов, которые я получаю от веб-сервера. Можно ли сжимать запросы?

16.12.2008 00:15:00
Вы выдвигаете большие данные в своем запросе? Если нет, то сжатие может стоить вам больше, чем вы получите.
Jason Jackson 16.12.2008 00:17:54
Да, мы пытаемся получить около 150 МБ данных примерно за 100 пакетов по 1,5
horatio 16.12.2008 00:32:41
2 ОТВЕТА
РЕШЕНИЕ

Расширения SOAP позволяют вам взаимодействовать с потоком SOAP как на клиенте, так и на сервере. Они хороши тем, что вы можете оставить свой сервисный код в покое - манипулирование происходит до начала веб-метода и после его завершения. Они работают так же, как HttpModule, но могут быть включены и на стороне клиента / запроса.

Кроме этого, единственная опция, которая приходит в голову, - это вручную сериализовать и сжимать большие элементы SOAP как byte [], а затем вручную декомпрессировать и десериализовать на сервере (дрожь ...). Проблемы с обслуживанием при таком подходе, вероятно, являются чрезмерными.

2
7.08.2014 17:46:54
Похоже, что ваша третья ссылка просто перенаправляется на searchwindevelopment.techtarget.com/?id=SOAPExtensions
Zack 7.08.2014 16:10:27
@ Зак - Да, ответу почти шесть лет (!), И он страдает от гниения ссылок. Я заменил плохую ссылку на статью Microsoft. Остерегайтесь, расширения SOAP не являются частью WCF и, следовательно, в значительной степени не имеют значения.
Corbin March 7.08.2014 17:53:45

Я нашел это руководство по сжатию сообщений SOAP в C # с использованием библиотеки SharpZipLib и расширений SOAP:

Кажется, украсит около 30% сжатия, сегодня попробую.

0
2.10.2009 09:28:53
user423430 10.08.2011 20:37:36