IE9でクライアント側のXSLTを使用すると、IEが元のXMLファイルを要求するよりもXSLと後続の要求をフェッチする要求に対して異なるヘッダーを送信することに気付きました。 。特に、accept-language
ヘッダーが完全に欠落しています。MSXMLクライアント側XSLTが受け入れ言語のヘッダーを送信しない
<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="transform.xsl"?>
<root/>
と私が気づく何この
...
<body>
<xsl:apply-templates select="document('section.xml')"/>
</body>
...
のようなXSLT XSLTなどsection.xml
ファイルの両方がHTTPリクエストでロードされていること:
ブートストラップXMLは次のようになります受け入れ言語ヘッダーなし。 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
これはランダムな推測です(正直なところ、これが何をするのか分かりません)。しかし、 'ServerHTTPRequest'プロパティを' true'に設定すると何か変わるのですか? http://msdn.microsoft.com/en-us/library/windows/desktop/ms766434(v=vs.85).aspx –
私は実際にXSLをXMLに変換することによって自動的に変換を実行するためにブラウザに依存しています資料。だから私はスクリプトオブジェクトを操作するためのフックを持っていません。 – Carsten