Я безуспешно пытался включить HTTP-сжатие gzip на моей службе WCF Restful на Windows Azure, которая возвращает JSON только из запросов GET и POST.
Я перепробовал так много вещей, что мне было бы сложно перечислить их все, и теперь я понимаю, что работаю с противоречивой информацией (касающейся старой версии Azure и т. Д.), Поэтому думаю, что лучше начать с чистого листа. !
Я работаю с Visual Studio 2008, используя инструменты февраля 2010 для Visual Studio.
Итак, согласно следующей ссылке ..
.. Сжатие HTTP теперь включено. Я воспользовался советом на следующей странице (только рекомендации по сжатию URL) ..
http://blog.smarx.com/posts/iis-compression-in-windows-azure
<urlCompression doStaticCompression="true"
doDynamicCompression="true"
dynamicCompressionBeforeCache="true"
/>
.. но я не получаю сжатие. Не помогает, что я не знаю, в чем разница между urlCompression и httpCompression . Я пытался это выяснить, но безрезультатно!
Может ли быть проблемой тот факт, что инструменты для Visual Studio были выпущены до версии Azure, которая поддерживает сжатие? Я где-то читал, что с помощью новейших инструментов вы можете выбрать, какую версию ОС Azure вы хотите использовать при публикации ... но я не знаю, так ли это, и если это так, я не могу найти, где выбирать. Могу ли я использовать версию с предварительным http?
Я также попробовал модуль сжатия http, но безрезультатно.
Есть ли у кого-нибудь актуальные советы о том, как этого добиться? то есть советы, относящиеся к текущей версии ОС Azure.
Ура!
Стивен
Обновление: Я отредактировал приведенный выше код, чтобы исправить тип во фрагменте web.config.
Обновление 2: Тестирование ответов с использованием URL-адреса whatsmyip, показанного в ответе ниже, показывает, что мои ответы JSON от моего service.svc возвращаются без какого-либо сжатия, но статические HTML-страницы ARE возвращается со сжатием gzip. Любые советы о том, как получить ответы JSON для сжатия, будут с благодарностью приняты!
Обновление 3: Попробовал ответ JSON размером более 256 КБ, чтобы выяснить, не связана ли проблема с тем, что ответ JSON меньше этого значения, как указано в комментариях ниже. К сожалению, ответ по-прежнему не сжат.