※現在、ブログ記事を移行中のため一部表示が崩れる場合がございます。
順次修正対応にあたっておりますので何卒ご了承いただけますよう、お願い致します。

IETesterのAjax通信のUserAgentは常にIE8です。


2010年 12月 15日

追記:既知のバグのようです

IE6のテスト中にはまったので紹介します。

社内で作成するWebアプリケーションではセッションハイジャック対策としてHTTPヘッダーのUserAgentやRemoteAddrがセッションの内容と異なっていた場合に破棄するというコードを組み込んでいます。
この仕組みを使っている場合にIETesterでAjax通信を行うとセッションの内容が取得できず呼び出したAPIから正常な結果が得られないという問題がありました。

何でだろう、、という事で調べてみました

UserAgentを表示させるスクリプトはこちら。sinatraとhamlをつかっています。

結果

一行目が通常のリクエストの時のUserAgentで二行目がAjax通信時のUserAgentです。

  • IE6(IETester)
  • IE7(IETester)
  • IE8(IETester)
  • IE6(XPmode)
  • IE8
  • (参考)Chrome8

IETesterの場合はすべてIE8になっています(汗。

という事で、IETesterではAjax、というかJavascriptの動作確認は気をつけて行いましょう。