ajax通信におけるAccess-Control-Allow-Originエラーの対処法

kensuke-iizuka 915views 更新:2016年3月15日

WordPressとブラウザやアプリ間でajax通信を行おうとするときに同一ドメインであれば 特に問題なく行えるのですが異なるドメインでアクセスしようとすると

XMLHttpRequest cannot load http://hoge.com/wp-admin/admin-ajax.php. No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'http://hoge2.com' is therefore not allowed access.

のようなエラーが出てしまいます。クロスドメイン通信(異なるドメイン間で通信すること)したい時は WordPressなら必ずwp-admin/admin-ajax.phpを介するのでこのファイルに

header("Access-Control-Allow-Origin: *");

を追加してあげれば大丈夫です!この”*”はすべてのオリジンからのアクセスを許可するワイルドカードです。特定のアクセス元のみ許可したい場合は

"Access-Control-Allow-Origin: http://hogedomain.com"

のように指定しましょう。

Access-Control-Allow-Originエラーの対処法(PHP+JQuery )

ログイン / 新規登録してコメントする

このソースコードをストックして後で利用したり、作業に利用したソースコードをまとめることができます。

こちらもお役に立つかもしれません