CORS のプリフライトリクエストに使われるメソッドと目的は?
正答
- HEAD で、本番のレスポンスのサイズと形式を事前に取得する
- OPTIONS で、本番のリクエストを送ってよいか事前に確認する
- GET で、相手のサーバーが応答できる状態か事前に確認する
- POST で、本番で使う認証トークンをサーバーに事前に登録する
解説
別オリジンへ Content-Type: application/json の POST や独自ヘッダー付きのリクエストなど「単純でないリクエスト」を送るとき、ブラウザは先に OPTIONS メソッドでプリフライトを送る。Access-Control-Request-Method などで「これから送る内容」を伝え、サーバーが Access-Control-Allow-Methods や Allow-Headers で許可すれば本番のリクエストが送られる。プリフライトはブラウザが自動で行うものでコードには書かない。HEAD はヘッダーのみを取得するメソッドで、CORS とは無関係である。
この問題を含む HTTP・Web 基礎 のテストを制限時間つきで解く
HTTP・Web 基礎クイズへ