2012-01-04 1 views
1

При использовании клиентской стороны XSLT в IE9 я заметил, что IE отправляет разные заголовки для запросов, которые извлекают XSL и последующие запросы, инициированные с помощью метода document(), чем для запроса исходного XML-файла , В частности, заголовок accept-language отсутствует.Клиентская сторона MSXML XSLT не отправляет заголовок принимающего языка

Бутстраповское XML выглядит следующим образом:

<?xml version="1.0" encoding="UTF-8"?> 
<?xml-stylesheet type="text/xsl" href="transform.xsl"?> 
<root/> 

и XSLT, как этот

... 
<body> 
<xsl:apply-templates select="document('section.xml')"/> 
</body> 
... 

Что я замечаю, что и XSLT, а также файл section.xml загружаются с запросом HTTP без заголовка принимающего языка. заголовки запроса, чтобы извлечь файл XML выглядеть следующим образом:

Accept: text/html, application/xhtml+xml, */* 
Accept-Language: en-US,de-DE;q=0.5 
User-Agent: Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Win64; x64; Trident/5.0) 
Accept-Encoding: gzip, deflate 
Connection: Keep-Alive 

в то время как другие ресурсы загружаются с

Accept: */* 
Accept-Encoding: gzip, deflate 
User-Agent: Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Win64; x64; Trident/5.0) 
Connection: Keep-Alive 

Является ли это функция или ошибка? Другие браузеры, такие как FF или Chrome, отправляют одинаковые заголовки.

Рабочий пример можно найти на my test server

Этот эффект вызывает проблемы в проекте реальной жизни, так как XML-файлы генерируются динамически и содержат конечного пользователя, обращенную содержимое, которое согласовывается на основе заголовка accept-language. Это терпит неудачу, потому что ни один заголовок не передается трансформатором.

Любое понимание или предложения по обходным методам приветствуются! Спасибо! Carsten

+0

Это просто случайное предположение (потому что я честно понятия не имею, что это должно делать), но что-то изменилось, когда вы установили свойство 'ServerHTTPRequest' в' true'? http://msdn.microsoft.com/en-us/library/windows/desktop/ms766434(v=vs.85).aspx –

+0

Я на самом деле полагаюсь на браузер, чтобы автоматически выполнить преобразование, указав XSL на XML документ. Поэтому у меня нет возможности манипулировать скриптовыми объектами. – Carsten

ответ

0

Я голосую за «ошибку», поскольку кажется более логичным повторять заголовок accept-language для зависимых запросов (не уверен, что это будет указано где угодно). Не могли бы вы передать информацию о предпочтениях языка в качестве параметра запроса для запроса, получающего XSL?

 Смежные вопросы

  • Нет связанных вопросов^_^