PRESSMAN*Tech

HTML5, CSS3からWordPress, AWS, Docker, Node.jsまで。プレスマンのスタッフが綴る技術ブログ。

Ajaxの同期処理時におけるブラウザによる違い。

XMLHttpRequestを同期モードで動かして既に送られていた非同期リクエストのレスポンスが同期リクエストのレスポンス前に返ってきたらどうなるかのブラウザ毎の挙動を調べました。
何を言っているのかわかりにくいですが

非同期リクエスト

同期リクエスト

非同期リクエストのレスポンス

同期リクエストのレスポンス

の形になった場合どうなるか。

  • chrome
    同期リクエストのレスポンス処理が優先される。(個人的には一番望ましい形)
  • FireFox
    同期リクエスト中も関係無くレスポンスが届いた瞬間に処理される。
  • IE
    同期リクエスト中は処理されないがサーバーからレスポンスが届いた順に処理される。

つまり、この辺りの制御は自前で行うしかないってことですね。
Ajaxで決済処理を行うときなどは同期処理を使っているのですが、その間に別の処理が入ると嫌なので上手くブラウザが処理してくれないかなと思っていたらやっぱりダメでした。

投稿者:taichi

taichi の紹介

何でもやりますが、一応プログラマです。
このエントリーをはてなブックマークに追加

私たちと一緒に働きませんか?

株式会社プレスマンでは、プログラミングが大好きな方、仕事を通してさらにスキルを磨きたい方を募集しています。まずは募集職種をご覧の上、お気軽にお問い合わせください。あなたとお会いできるのを楽しみにしています。

プレスマンの採用情報を見る →

コメントは受け付けていません。

▲ 先頭へ戻る