今日はサーバーとクライアント間でデータ転送するためのajax通信を学びました。その中でheader(“Access-Control-Allow-Origin”)を設定したにもかかわらずNO Access-Control-Allow-Originのエラーが出てしまうことが続いたため、対処を考えました。
Access-Control-Allow-Originエラーへの対処
(1)function.phpではなくadmin-ajax.php内に記述する
(2)文字コードを明示的に指定するheader関数を加える
(3)admin-ajax.php内に予め記述されているsend_origin_headers(); の次の行に書くようにする
/** Allow for cross-domain requests (from the front end). */ send_origin_headers(); //この下に書き加える header("Content-Type: application/json; charset=utf-8"); //(2)と対応 header("Access-Control-Allow-Origin: *");