LoginSignup
6
1

More than 1 year has passed since last update.

CORSにハマった...(Laravel, JavaScript)

Posted at

CORSにハマったので、備忘録として記載します。。

CORSとは、

オリジン間リソース共有 (Cross-Origin Resource Sharing, CORS) は、追加の HTTP ヘッダーを使用して、あるオリジンで動作しているウェブアプリケーションに、異なるオリジンにある選択されたリソースへのアクセス権を与えるようブラウザーに指示するための仕組みです。

引用元: https://developer.mozilla.org/ja/docs/Web/HTTP/CORS

ハマった原因としては、GETリクエスト用のAPIだけ用意してCORS対策のレスポンスヘッダーを設定していたのですが、プリフライトリクエストを考慮しておらず、JavaScriptでCORSのエラーが発生していました。

プリフライト(preflight)リクエストとは

単純リクエストとは異なり、「プリフライト」リクエストは始めに OPTIONS メソッドによる HTTP リクエストを他のドメインにあるリソースに向けて送り、実際のリクエストを送信しても安全かどうかを確かめます。サイト間リクエストがユーザーデータに影響を与える可能性があるような場合に、このようにプリフライトを行います。

Laravel側でOptionsメソッドのリクエストも考慮した形に変更したところ無事解決しました。

6
1
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
6
1