POST を使用してクロスドメイン サービスを提供したいと考えています。プリフライト OPTIONS 呼び出しが成功したことを確認できますが、投稿すると Cookie が Chrome に送信されません。Firefox と Safari では、同じ JavaScript とサーバー コードが機能します。何が問題なのですか?詳細は次のとおりです。
リクエスト URL:http://j.test.com/Post
リクエスト方法:OPTIONS
ステータス コード:200 OK
リクエスト ヘッダー表示ソース
Accept: /
Accept-Charset:ISO-8859-1,utf-8;q=0.7,*;q =0.3
Accept-Encoding:gzip,deflate,sdch
Accept-Language:en-US,en;q=0.8
Access-Control-Request-Headers:origin, x-requested-with, content-type, accept
Access-Control-Request - メソッド: POST
接続: キープアライブ
ホスト: j.test.com
オリジン: http://www.amazon.comリファラー:
http://www.amazon.com/Gone-Girl-A-Novel-ebook/dp /B006LSZECO/ref=pd_rhf_gw_s_ts_2
ユーザーエージェント:Mozilla/5.0 (Windows NT 5.1) AppleWebKit/536.11 (KHTML、Gecko など) Chrome/20.0.1132.47 Safari/536.11
応答ヘッダー
Access-Control-Allow-Credentials:true
Access-Control-Allow-Headers:origin、x-requested-with、content-type、accept
Access-Control-Allow-Methods:POST、OPTIONS
Access-Control-Allow-Origin :http://www.amazon.com
Access-Control-Max-Age:1728000
Connection:keep-alive
Content-Length:0
Date:Tue, 04 Sep 2012 16:44:48 GMT
サーバー:nginx
私はjQueryを使用しています:
jQuery.ajax({
type: "POST",
url: "http://j.test.com/Post",
xhrFields: {
withCredentials: true
},
data: {
referringUrl: document.URL
},
success: function(data) {
},
error: function (responseData, textStatus, errorThrown) {
}
});