5.1 通信監視の基本
Network Panel Basics
Networkパネルを開く
- F12でDevToolsを開く
- 「Network」タブをクリック
- ページをリロードして通信を記録開始
パネル構成
ツールバー
| ボタン | 説明 |
|---|---|
| 🔴 Record | 記録の開始/停止 |
| 🚫 Clear | ログをクリア |
| Filter | テキストフィルタ入力欄 |
| タイプフィルタ | All, Fetch/XHR, JS, CSS, Img, Media, Font, Doc, WS, Wasm, Manifest, Other |
| Preserve log | ページ遷移でもログを保持 |
| Disable cache | キャッシュを無効化 |
| Throttling | ネットワーク速度の制限 |
リクエスト一覧
各リクエストが行形式で表示される。列の内容:
| 列 | 説明 |
|---|---|
| Name | リソースのファイル名またはURL |
| Status | HTTPステータスコード(200、404等) |
| Type | リソースタイプ(document、script、stylesheet等) |
| Initiator | リクエストを発生させた要因(スクリプト、パーサー等) |
| Size | レスポンスサイズ(圧縮後/展開後) |
| Time | リクエスト完了までの時間 |
| Waterfall | タイミングの視覚化 |
列のカスタマイズ
列ヘッダーを右クリックで、表示する列を選択できる。
リクエスト詳細
リクエストをクリックすると、詳細パネルが表示される。
Headers(ヘッダー)
| セクション | 内容 |
|---|---|
| General | URL、メソッド、ステータスコード |
| Response Headers | サーバーからのレスポンスヘッダー |
| Request Headers | ブラウザが送信したリクエストヘッダー |
Payload(ペイロード)
POSTリクエストなどで送信したデータ。
- Query String Parameters: URLパラメータ
- Form Data: フォームデータ
- Request Payload: JSONなどのボディ
Preview(プレビュー)
レスポンスの整形表示。JSONは展開可能なツリー、HTMLはレンダリング、画像はプレビュー表示。
Response(レスポンス)
レスポンスボディの生データ。
Initiator(イニシエーター)
リクエストを発生させたコードのスタックトレース。どのスクリプトがこのリクエストを呼んだか追跡できる。
Timing(タイミング)
リクエストの各フェーズにかかった時間。詳細は5.2 Waterfall分析を参照。
Cookies(クッキー)
送受信されたCookieの一覧。
フィルタリング
タイプフィルタ
ツールバーのボタンでリソースタイプを絞り込み。
- Fetch/XHR: API通信(最もよく使う)
- JS: JavaScriptファイル
- CSS: スタイルシート
- Img: 画像
- Doc: HTMLドキュメント
- WS: WebSocket通信
テキストフィルタ
Filterボックスに入力してURLやファイル名で絞り込み。
フィルタコマンド
// ドメインで絞り込み
domain:api.example.com
// 特定のメソッドのみ
method:POST
// 特定のステータスコード
status-code:404
// サイズでフィルタ
larger-than:1M
// ブロックされたリクエスト
is:blocked
// キャッシュからのリクエスト
is:from-cache
// サードパーティ
-domain:example.com
// 複数条件
domain:api.example.com method:POST
反転フィルタ
「Invert」チェックボックスでフィルタ条件を反転。
サードパーティリクエストを非表示
「3rd-party requests」チェックボックスで外部ドメインへのリクエストを非表示。
コピー操作
リクエストを右クリックで様々な形式でコピーできる。
| オプション | 説明 |
|---|---|
| Copy as cURL | cURLコマンドとしてコピー |
| Copy as fetch | JavaScript fetchコードとしてコピー |
| Copy as Node.js fetch | Node.js用fetchコード |
| Copy as PowerShell | PowerShellコマンド |
| Copy URL | URLのみコピー |
| Copy response | レスポンスボディをコピー |
| Copy all as HAR | すべてのリクエストをHAR形式で |
リクエストの再送
リクエストを右クリック → 「Replay XHR」で同じリクエストを再送信できる。
編集して再送
「Copy as fetch」でコードをコピーし、Consoleで編集して実行。パラメータを変えてAPIをテストする際に便利。
リクエストのブロック
特定のリクエストをブロックして、読み込めない状況をシミュレート。
設定方法
操作手順
- リクエストを右クリック
- 「Block request URL」または「Block request domain」を選択
- ページをリロードしてテスト
ブロックパターンの管理
Network request blocking(Ctrl+Shift+P → "Show Network request blocking")でパターンを追加・管理できる。
レスポンスのオーバーライド
リクエストを右クリック → 「Override content」でレスポンスを差し替え。詳細は4.4 Local Overridesを参照。
ネットワークログの検索
Ctrl+Fですべてのリクエスト/レスポンスを横断検索。
// 特定のAPIレスポンスを検索
"user_id": 123
// エラーメッセージを検索
"error"
エクスポート/インポート
HAR形式でエクスポート
ログを右クリック → 「Save all as HAR with content」でHTTP Archive形式で保存。
HARのインポート
Networkパネルにドラッグ&ドロップでHARファイルを読み込み。過去の通信ログを分析する際に便利。
[1] Inspect network activity - Chrome DevTools. developer.chrome.com
[2] Network features reference - Chrome DevTools. developer.chrome.com