これは私をたくさん混乱させます。ブラウザで2つのタブが開いているとします(1つはhttp://aaa.com
、もう1つはhttp://bbb.com
)。クロスオリジンポリシーはどのように機能しますか?
のは、私は、ブラウザのJavaScriptコンソールからの要求
$ajax({
method : 'POST',
url : 'http://aaa.com/SomeAction',
...
});
を作りましょう。私がクロスオリジンのポリシーを理解する方法は、サーバが入力したJSコンソールがhttp://aaa.com
のタブにあるものであれば、そのリクエストが発生することのみを許可するということです。しかし、サーバーはそれをどのように知っていますか?私のブラウザは、リクエストがどこから来たのかを示すヘッダーを送りますか?
'Network'タブを開き、' $ .ajax() 'リクエストのurlを選択し、' Headers'タブをクリックし、 'Request Headers'にスクロールしてリクエストのリクエストヘッダとレスポンスヘッダを確認できます。 – guest271314
サーバーは何も知っている必要はありません。_client_はこのポリシーを実施するものです。 (ここではCORSについて話していない限り、当然のことながらサーバーもその役割を果たす必要があります) – CBroe
@CBroe - CORSを使用しても、サーバーはポリシーを強制しません。それはそれを緩和する。 – Quentin