戻る

HAR ビューアー・マスキング

開発ツール

読み込み中

ツールを読み込んでいます

ツールのコードは開いたときにのみ読み込まれます。

このツールの処理はすべてブラウザー内で行われ、入力内容はサーバーへ送信されません。

このツールについて

HAR 1.2 ファイルを選ぶか JSON を貼り付けると、記録済みのネットワーク通信をブラウザー内で確認できます。ドメインや HTTP ステータスで絞り込み、ヘッダー、本文、各段階の所要時間をプレーンテキストで表示します。アーカイブのアップロード、リクエストの再実行、記録された URL へのアクセス、読み込んだデータの永続保存は行いません。エクスポートでは設定に応じてマスキングした別の HAR を作成し、閲覧中は元の詳細を確認できます。マスキングは情報露出を減らすもので、完全な匿名化ではありません。共有前に出力ファイル全体を確認してください。

主な用途

  • サーバーへ再アクセスせず、記録された接続・待機・受信時間を比較して遅い API リクエストを調べる。
  • ブラウザーの通信記録から、特定ドメインで失敗したリクエストを探す。
  • 一般的な認証情報や本文を除いたサポート提出用 HAR を作り、残る識別情報を自分で確認する。

使い方

  1. 1.ブラウザーの Network(ネットワーク)パネルから HAR を出力し、ファイルを選ぶか完全な JSON を貼り付けます。HAR 1.2、UTF-8 で 5 MiB 以下、最大 2,000 件の記録に対応します。
  2. 2.ドメインやステータスで一覧を絞り込み、リクエストを選択します。URL、ヘッダー、本文、ミリ秒単位の時間を確認してください。時間の欠落は、その段階が 0 ミリ秒だったという意味ではありません。
  3. 3.出力時のマスキング設定を選びます。まず全クエリ値のマスキングと両本文の削除を維持し、必要な場合だけ変更して HAR をダウンロードします。表示フィルターは出力範囲を限定しないため、共有前に全記録を確認してください。

架空データによる HAR の例

SSL が接続時間に含まれる 100 ミリ秒のリクエスト

{"log":{"version":"1.2","creator":{"name":"Synthetic example","version":"1.0"},"entries":[{"startedDateTime":"2026-01-01T00:00:00.000Z","time":100,"request":{"method":"GET","url":"https://example.com/api/items","httpVersion":"HTTP/1.1","cookies":[],"headers":[],"queryString":[],"headersSize":-1,"bodySize":0},"response":{"status":200,"statusText":"OK","httpVersion":"HTTP/1.1","cookies":[],"headers":[],"content":{"size":0,"mimeType":"application/json"},"redirectURL":"","headersSize":-1,"bodySize":0},"cache":{},"timings":{"blocked":0,"dns":0,"connect":30,"ssl":10,"send":5,"wait":50,"receive":15}}]}}
GET example.com · 200
合計:100 ms
接続:30 ms(うち SSL:10 ms)
送信:5 ms · 待機:50 ms · 受信:15 ms

架空データだけを使った完全な HAR です。各段階は 0 + 0 + 30 + 5 + 50 + 15 = 100 ms です。SSL をもう一度足すと誤って 110 ms になります。開いても example.com にリクエストは送信しません。

既定のマスキング後にも確認が必要

GET https://example.com/users/demo-42?token=demo-token&page=2
Authorization: Bearer demo-token
Cookie: session=demo-session
X-Account: demo-42
Authorization と Cookie:削除
クエリ値:マスキング
ドメインと /users/demo-42 パス:保持
X-Account の値:要確認

架空のリクエストの抜粋であり、そのまま読み込める完全な HAR ではありません。既定の設定は一般的な認証情報と全クエリ値を隠しますが、パスや認識されない識別用ヘッダーは残る場合があります。匿名化を保証すると思わず、実際の出力を確認してください。

JSON の指定キーだけを隠す

Content-Type: application/json

{"TOKEN":"demo-token","customer":"demo-42","count":2}

指定する本文キー:token
TOKEN の値:マスキング
customer:demo-42
count:2

対応する JSON 本文のキー指定マスキングを示す架空の抜粋であり、完全な HAR ではありません。token は TOKEN にも一致します。ほかのフィールドは残るため、customer の識別情報は確認が必要です。本文を残す理由がなければ、本文削除を有効なままにしてください。

HAR の確認でよくある間違い

  • リクエスト単体や JavaScript のオブジェクトを貼り付ける:log.version と log.entries を含む完全な HAR JSON を読み込んでください。キーには二重引用符が必要で、末尾のカンマは使えません。
  • 5 MiB または 2,000 件を超える記録を開く:再現操作を短く記録するか、信頼できるローカルの手順で先にファイルを小さくしてください。
  • 合計を求める際に SSL と connect を加算する:SSL はすでに connect に含まれます。
  • -1 や未記録の時間を 0 とみなす:記録元がその段階を測定できなかった可能性があります。
  • 1 件に絞り込めば出力も 1 件になると思う:読み込んだ全記録が出力されます。
  • 元のファイルを共有する、またはマスキング結果を無確認で信頼する:実際の出力ファイルでドメイン、パス、タイトル、残るヘッダー、保持した本文とクエリ値を確認してください。

制限と注意事項

  • 読み込めるのは 5 MiB(5,242,880 UTF-8 バイト)以下、最大 2,000 件で、リクエスト URL が HTTP(S) の HAR 1.2 JSON です。入力範囲を限定したビューアーであり、ライブ記録、完全な HAR 検証、パケット解析、リクエスト再実行のツールではありません。 入力の上限はさらに、入れ子 64 階層、JSON の値 100,000 個です。
  • 時間はアーカイブの記録値で、単位はミリ秒です。欠落や -1 は不明を意味し、0 とは異なります。SSL は connect に含まれるため二重に加算しません。並行リクエストは重なるので、各リクエストの時間の合計はページ読み込み時間になりません。
  • 既定の出力では Cookie、認識済みの認証ヘッダー、リクエストとレスポンスの本文、コメント、独自・未知のフィールドを削除し、すべてのクエリ値をマスクします。クエリ名や本文キーを指定する場合、大文字・小文字は区別しません。あらゆる機密情報を検出するものではありません。
  • 本文のキー指定マスキングは、このツールが対応する JSON と URL エンコード形式のフォームに限ります。このモードでは未対応、不正な形式、base64 エンコードの本文を除外しますが、「保持」を選ぶと機密情報を含めて残る場合があります。出力は既知のフィールドを再構築し、ページや未対応のメタデータを除外するため、元のアーカイブとバイト単位では一致しません。
  • 表示フィルターにかかわらず、読み込んだ全記録を出力します。保持したドメイン、URL パス、ヘッダー値、残すよう選んだ内容から、個人や秘密が特定される可能性があります。元の HAR には識別につながるページタイトルも含まれ得ます。プレーンテキスト表示は埋め込み内容の実行を防ぎますが、安全に共有できる保証にはなりません。 記録時刻や URL のホスト・パス・通常のヘッダーに含まれる IP アドレスでも個人が特定される可能性があります。

よくある質問

HAR はどう取得しますか?ブラウザーのマスキング済み出力だけで十分ですか?

ブラウザーの Network(ネットワーク)パネルで対象の操作を記録し、エクスポート機能を使います。Chrome には一部の機密ヘッダーを除く HAR 出力がありますが、URL などの記録内容は別途確認が必要です。可能なら短い記録と架空のテストデータを使ってください。このビューアーは独自の出力設定を適用しますが、公開してよいファイルだと認定するものではありません。

既定のマスキングとキー指定では何が違いますか?

既定ではすべてのクエリ値を隠し、両方の本文を除外します。キー指定では、クエリ名や対応する本文フィールドを大文字・小文字を区別せず照合し、それ以外の値は残る場合があります。記録に必要なキーを指定し、結果を確認してください。一般的な認証情報を除いても、パス内の ID、未知のヘッダー、未選択のフィールドは自動的に消えません。

各段階の時間を足しても予想どおりにならないのはなぜですか?

HAR は記録元のツールが測定した値を保存します。SSL は connect の一部で、測定できなかった段階は -1 または未記録になり、複数のリクエストは並行して進むことがあります。wait が長いだけで、サーバーだけが原因とは断定できません。時間の内訳は調査の手がかりとして使ってください。

絞り込みや出力で元の HAR は変更されますか?

いいえ。フィルターは表示する一覧だけを変え、エクスポートは読み込んだ全記録を含む別のアーカイブを構築します。元のファイルを上書きせず、読み込んだデータを履歴として保存しません。ただしダウンロードすると生成ファイルは端末に保存されるため、機密情報を含み得るファイルとして管理してください。

関連ツール