プログラミング 未分類

blocked by CORS policy: No ‘Access-Control-Allow-Origin’ header is present on the requested resource.

投稿日:2022年7月12日 更新日:

エラー内容と状況

JavascriptからPHPを呼び出したら下記エラーが

Access to XMLHttpRequest at ‘https://ooo/xxx.php’ from origin ‘http://localhost:7000’ has been blocked by CORS policy: No ‘Access-Control-Allow-Origin’ header is present on the requested resource.


CORSについては一応理解しており、PHPファイルにも以下を追加済み

header(“Access-Control-Allow-Origin: *”);
header(“Access-Control-Allow-Methods: GET, POST, OPTIONS, PUT, DELETE”);
header(“Access-Control-Allow-Headers: Origin, X-Requested-With, Content-Type, Accept”);
header(“Content-type:application/json”);

Access-Control-Allow-Origin: * を記述しているのになぜエラーが出るか分からず、長時間はまりました。

原因と解決

エラー原因はCORSではなく、javascriptから呼び出しているPHPファイル内の構文ミスでした。ある行の末尾に「;」が抜けていました。PHPファイルを修正後、問題なく動作しました。
恐ろしい事にPHPファイルに問題がある場合にブラウザには上記の「 No ‘Access-Control-Allow-Origin’ header 」エラーメッセージが返ってくるのです。本当にアクセス権限を与え忘れている時との区別がつかないので注意が必要です。PHPはエラーが分かりづらく、扱うのが恐ろしいです。。。

-プログラミング, 未分類

執筆者:

関連記事

Admob広告配信制限 コンテンツの前面に重なって表示される Google が配信する広告の扱い

公開して安定期に入っているアプリに突然Admob広告配信制限の連絡が来ました。内容は 「コンテンツの前面に重なって表示される Google が配信する広告の扱い」 でした。こんな初歩的な違反をまだ犯し …

Admob アプリ起動時広告(Open ad)は使わない事にした話 – 例題通りやっても審査落ち?

Admob広告は初期にはバナーとインタースティシャルしかなかったと記憶しています。その後、少し複雑なリワード広告が登場しました。新しい広告タイプについてはWebに情報が増えてきたら実装に挑戦しています …

Microsoft AzureでNode.jsゲームをデプロイ – web.configを忘れるな

Node.js+Three.jsでフォートナイトのような建築FPSゲームを自作しております。Paasサービスは手軽で太っ腹なHerokuを利用していますがサーバーがアメリカにあるため通信ラグに悩まされ …

AndroidアプリのGoogle Play Console審査が異常に長い場合の対処法

最近、Andoridアプリのアップデートを行いました。5000DLほどのアプリですがいつもならGoogle Play Console審査は数時間で完了しています。しかし5日ほど経っても審査が終わりませ …

Trace Video Camera [Support Page]

This is the support page for the iPhone app “Trace Video Camera” that can create traject …

スポンサーリンク