CORS preflight失敗時の診断手順

preflight失敗は、実リクエスト前にブロックされるため、まずOPTIONS応答の成立可否を最優先で確認します。

典型的な症状

診断ステップ

  1. 1) CORS Error Troubleshooting でエラー文から失敗種別を特定
  2. 2) CORS Diagnostic で request/response の整合を確認
  3. 3) CORS Response Inspect で ACAO / ACAM / ACAH / ACAC を確認
  4. 4) Origin Allowlist Check で許可条件を再確認
  5. 5) Host/Authority/Origin Inspect でヘッダー起点の不一致を確認

OPTIONSで最低限成立させる条件

よくある原因

修正後の再確認

使うツール

FAQ

curl で通るのにブラウザで失敗するのはなぜですか?
ブラウザでは preflight と CORS 制約が適用されるためです。OPTIONS 応答と Allow-* の整合を確認してください。
Access-Control-Allow-Origin に * を使えば解決しますか?
credentials=true を使う場合は不可です。認証付き通信では明示的な Origin を返してください。

参照仕様

site_map ルールに基づいて、次に確認すべきページを表示しています。

  1. CORS Error Troubleshooting — CORSエラー文とヘッダーを突き合わせて失敗ポイントを症状別に切り分け
  2. CORS Diagnostic — Origin と Allow-* を照合してCORS判定を診断
  3. CORS Response Inspect — Access-Control-Allow-* を解析してCORS応答を点検
  4. Origin Allowlist Check — Origin と許可リストの一致を判定
  5. CORS Checklist — CORS設定の確認項目を手順化
  6. Host/Authority/Origin Inspect — Host/:authority/Origin/Referer を照合して不整合を確認
  7. 症状別診断ガイド(入口) — キャッシュ/CORS/JWT/MIME系の実運用トラブルを、症状起点で最短導線に振り分ける総合ハブ
  8. 304が返らない時の診断手順 — ETag / Last-Modified と If-* の往復を確認して 304 不発を切り分ける

事例クラスタ一覧

実運用トラブル別に、最短の診断ルートへ入るためのシナリオ集