WordPressのAjax通信がスマホ実機でのみうまくいかないのを解決した(完全個人メモ)
Ajaxでページ遷移なしの絞り込み検索を実装した。
PCのブラウザでは問題なく動作し、Chromeの開発者ツールではSPサイズにしても問題なく動作していた。
しかし、いざiPhone実機で見てみると・・・
・GETパラメータ付きURLからの検索がうまくいっていないみたい
(例:https:/aaaa.com/job/?search_worktype[]=doctor&search_worktype[]=nurse)
というのがなんとなくわかった。おそらく実機ではコンソールエラーが出ているはず!(というか出ててくれお願い・・・!という気持ち)
で今度はMacとiPhoneをつないで実機デバッグを開始。
そうすると出てました。403エラー。それでおそらくGETパラメータがなんかおかしいんだろうなと予想。
よくよくエラー内容を見てみると、リクエストパラメータにurlReferrerってのがくっついてた。
確かに機能実装途中にurlReferrerというGETパラメータを追加してajax通信するようにしたけど、結局使わないようにした気がする・・・というのを思い出し、urlReferrer関連の不要コードをコメントアウトし再度挙動を確認!
そうすると、動いた〜〜〜〜〜!リリース近いてきてたのですんごく焦ってたので解決して本当によかった!!!
PCではバッチリ動いてくれてたので本当に油断してた。
PCブラウザでは良きに計らってくれる部分多いのかなー?スマホ実機でだけエラーになるとかトリッキーなのでやめてほしい(泣)
今回の教訓。
実機チェックはちょくちょくやること。開発者ツールでうまくいってても信じない!
実機確認の方法はこちらを参考にさせていただきました。
https://qiita.com/unsoluble_sugar/items/2a3d06631a6b8259dc44