CORS POST リクエストをサーバーに送信しようとしています。
Chrome では、これは期待どおりに機能します。OPTIONS プリフライト リクエストがサーバーに送信され、サーバーがアクセス コントロール ヘッダーで応答し、POST リクエストが送信されます。IE または Firefox でこれを実行しようとすると、OPTIONS 要求でリファラーが送信されないため、access-control-allow-origin ヘッダーを追加できません (これはプログラムで行われるため)。
Javascript は次のとおりです。
$.ajax({
url: $(this).attr('href'),
type: 'POST',
xhrFields: {
withCredentials: true,
},
contentType: 'application/json; charset=utf-8;',
data: JSON.stringify(data),
success: function (response) {
alert(response);
},
});
return false;
});
リファラーが OPTIONS プリフライト リクエストで送信されることを保証する方法はありますか? そうでない場合 - 参照元の URL を取得して allow origin ヘッダーを追加できる別の方法はありますか?