Fiddlerの基本操作
Fiddlerを起動すると次のような画面が表示されます。
HTTPリクエスト/レスポンスの確認
ブラウザを適当に操作してWebサイトを表示していくと、FiddlerがHTTP通信(Web Session)を記録していきます。
画面左側に記録されたHTTP通信が一覧表示されます。
画面右側の「Inspector」タブをクリック(F8 でも設定可能)して、画面左側のHTTP通信を選択すると、選択したHTTP通信の情報が表示されます。
画面右側上段がHTTPリクエスト、下段がHTTPレスポンスの情報です。
それそれ、「Raw」タブを選択すると生データを確認することができます。
タブにはいろいろな種類がありますので、状況に応じて使い分けます。
例えば、画像ファイルであれば、「ImageView」を選択することで、画像を確認することができます。
Webプロキシ機能(Capture機能)のON/OFF
FiddlerにHTTP通信を記録させたくない場合は、画面左下にある「Capturing」をクリックします。
「Capturing」が非表示になります。(F12 でも設定可能)
この状態では、ブラウザを操作してもHTTP通信は記録されません。
再び記録させるためには、もう一度、画面左下をクリックし、「Capturing」を表示させます。
その他、Webプロキシに関する設定は、「Tools」->「Fiddler Options...」で開く「Fiddler Options」画面の「Connections」タブで変更することができます。
CaptureするWebクライアントのプロセスフィルタ機能
実のところ、HTTP通信をしているプログラムはWebブラウザだけではありません。
デバッグ中は、目的のWebクライアントが発するHTTP通信以外はノイズになりますので、プロセスフィルタを使ってフィルタします。
画面上部の「Process Filter」は、目的のプロセスのウィンドウ上でDropすることで対象プロセスを選定します。
画面下部はスイッチになっていて、クリックする度に以下のように変化します。
- All Process
全てのプロセスを許可 - Web Browsers
ブラウザのみ許可 - Non-Browser
ブラウザ以外のWebクライアントを許可 - Hide All
全てフィルタ
HTTPリクエスト/レスポンスのブレーク機能(Automatic Breakpoints機能)
通信中のHTTPリクエスト/レスポンスを捕まえて、その内容を操作したい場合、画面下部のスイッチをクリックします。
スイッチは、クリックする度に以下のように変化します。
- (なし)
ブレークしない(F11 でも設定可能) - (上矢印+ポーズ)
HTTPリクエストをブレーク(Alt + F11 でも設定可能) - (下矢印+ポーズ)
HTTPレスポンスをブレーク(Shift + F11 でも設定可能)
「HTTPリクエストをブレーク」に設定すると、以下の画面のようにHTTPリクエストをブレークし、レジュームされるのを待ちます。
この状態でHTTPリクエストの内容を操作することができます。
「Break On Response」をクリックすると、今度はHTTPレスポンスをブレークします。
この状態でHTTPレスポンスの内容を操作することができます。
「Run To Completion」をクリックすると、レジュームします。
なお、画面上部の「Resume All」をクリックすると、ブレークしているすべてのHTTP通信をレジュームします。
Fiddler徹底解剖