У меня есть веб-служба, возвращающая значение XML в формате String.
Через IE9 я вижу, что некоторые размеры вызовов веб-службы достигают 1 МБ.
Я включил сжатие в IIS 6, отредактировав файл Metabase.xml, установив следующее:
HcScriptFileExtensions = "asmx"
в
IIsCompressionScheme Location ="/LM/W3SVC/Filters/Compression/gzip"
Я также включил сжатие HTTP на вкладке Сервис длясвойства веб-сайтов в диспетчере IIS.
Я также добавил сжатие HttCompression в расширениях веб-служб, сопоставляя их с библиотекой gzip в папке Windows \ System32 \ inetsrv \.
Когда я выполняюпри вызове веб-службы возвращаемое значение не сжимается (того же размера, что и при вызове службы ранее).
Есть ли какие-либо советы, чтобы гарантировать, что IIS сжимает значение строковых данных, возвращаемых IIS?
Обновление: я также следовал инструкциям по этим ссылкам:
http://rextang.net/blogs/work/archive/2007/09/12/5654.aspx http://blogs.msdn.com/b/rextang/archive/2007/09/13/4880187.aspx
Используя IE9, I из Инструментов разработчика, проверяя подробный вид веб-службывызовите, я вижу, что ключ Accept-Encoding имеет значение gzip / deflate.
Значение XML (в строке) SOAP веб-службы все еще не сжимается.Какие области, где я должен искать дальше?
Кстати, я использую IIS6.
Обновление: я проверил этот сайт: http://blogs.iis.net/webtopics/archive/2009/02/24/troubleshooting-http-compression-in-iis-6-0.aspx
Я получил элементы 1, 2,3 правильно.
Для пункта 4 я даже пытался установить только asmx как расширение, но безрезультатно.
Для пункта 5 у меня нет настроек сжатия у ребенкаlevel.
Для элемента 6 антивирус не проверяет каталог на предмет сжатия.
Для элемента 7 я не передаю косую черту в качестве параметра исполняющей DLL.
По пункту 8 я не уверен, где и как это проверить.
По пункту 9 я проверил с помощью fiddler, и соответствующие заголовки помещаются в заголовки запроса.
Для элемента 10 я не вижу никаких настроек в моих приложениях, которые бы требовали прикосновения к нему.
Для элемента 11 код состояния, который я получаю, равен 200.
Для элемента 12доступ к приложению без указания прокси.
Для пункта 13 запрос является веб-службой.