現在、IE10 (互換性ではなく IE10 モード) を使用したクロスドメイン ajax 呼び出しで問題が発生しています。
状況: 私は 2 つのドメインを持っていhttp://a
ますhttp://b
。の Cookie を設定していhttp://b
ます。私は現在 のページにいますhttp://a
。
XMLHttpRequestを使用して CORS リクエストを実行したい( http://blogs.msdn.com/b/ie/archive/2012/02/09/cors-for-xhr-in-ie10.aspxhttp://b
によると、動作するはずです) )、リクエストに Cookie を含めます。JS は次のとおりです。
var xhr = new XMLHttpRequest();
xhr.open('GET', 'http://b', true);
xhr.withCredentials = true;
xhr.send();
これにより、Cookie がリクエストに確実に添付されます。ただし、Fiddler トレースは、Cookie が添付されていないことを示しており、401: Access Denied
.
サーバーは CORS で動作するように構成されており、Access-Control ヘッダーが含まれています。
Access-Control-Allow-Origin: http://a
Access-Control-Allow-Credentials: true
(OPTIONS プリフライト リクエストがなく、IE が送信する最初のリクエストが GET であり、Cookie が存在しないため、401 が発生するため、違いはありません)。
さらに、JS スニペットは Firefox と Opera の両方で正常に動作します。