HARをPostmanコレクションに変換
ガイド
HARをPostmanコレクションに変換
ブラウザのデベロッパーツール、Charlesプロキシ、mitmproxyはキャプチャされたトラフィックをHAR(HTTPアーカイブ)ファイルとして保存できますが、PostmanはHARを直接インポートできません。このコンバーターは、ブラウザ内でHARエクスポートをPostmanコレクションv2.1のJSONファイルにリライトし、すべてのキャプチャされたリクエストを実際のPostman呼び出しとして再実行できるようにします。ヘッダー、クエリ文字列、ボディ、および例の応答が含まれます。
使用方法
- Chrome / Firefox / Edgeのデベロッパーツール(ネットワークタブ → 右クリック → 「すべてをHARとして保存(コンテンツを含む)」)またはCharles、Fiddler、mitmproxy、Insomniaからトラフィックをエクスポートします。
- ドロップする
.harファイルをアップローダーにドロップまたはJSONをテキストエリアに貼り付けます。 - リクエストをグループ化する方法を選択します — ホスト名、最初のパスセグメント、またはフォルダなし。
- 静的資産、API以外のリクエスト、または特定のステータス/メソッドコードをフィルタリングするオプションを設定します。
- クリック コピー PostmanコレクションJSONをコピーするか、 .jsonをダウンロード を保存します。
name.postman_collection.json. - Postmanで ファイル → インポート を選択し、ファイル(またはJSONをrawテキストとして貼り付け)をドロップします。
機能
- Postmanコレクションv2.1出力 – Postman、Insomnia、Bruno、Hoppscotchおよびv2.1スキーマをサポートするすべてのツールにクリーンにインポートできるコレクションを生成します。
- スマートグループ化 – ホスト名ごとのフォルダ、最初のパスセグメントごとのフォルダ、またはリクエストのフラットリストのいずれかを選択できます。
- 強力なフィルタ – 1クリックで静的資産(CSS、JS、フォント、画像、メディア)を削除したり、特定のメソッド、ステータス階層、またはURLの部分文字列に絞り込みできます。
- 認証 → {{token}} – すべての
Authorizationヘッダー値をPostman変数に置き換えて、JSONをチームメンバーと共有する際に安全にします。 - {{baseUrl}}プロモート – キャプチャ中に最もよく見られるスキーム+ホストを検出し、すべてのリクエストURLを
{{baseUrl}}/...に書き換えます。これにより、ステージングまたはプロダクション環境に簡単にリターゲティングできます。 - HTTP/2クリーンアップ – 擬似ヘッダー(
:method,:authority,:path,:scheme)およびCookieヘッダーをデフォルトで削除し、Postmanから正しくリクエストが送信されます。 - 例応答が含まれています – インポートされたすべてのリクエストには、キャプチャされた応答ボディとヘッダーを例として含めているため、モックサーバーとテストは即座に動作します。
- 100%クライアントサイド – HARファイルには認証トークンやPIIが含まれることがあります。変換はすべてブラウザ内で行われ、サーバーにアップロードされることはありません。
よくある質問
-
HAR(HTTPアーカイブ)ファイルとは何ですか?
HARはHTTPトラフィックをアーカイブするためのJSONベースのオープン標準です。W3CのWeb Performance Working Groupがこれを定義し、異なるブラウザやツールがネットワーク活動のキャプチャを共有できるようにしました。HARファイルにはトップレベルのログオブジェクトとページメタデータ、および1つのリクエストごとに1つのエントリ(リクエスト、応答、タイムイング、サーバーIPアドレスフィールド)を含むエントリ配列があります。
-
Postmanコレクションv2.1とは何ですか?
Postmanコレクションv2.1は、Postmanが保存されたリクエストのフォルダを表すための内部JSONスキーマです。ネストされたフォルダ、リクエストボディの複数モード(raw、urlencoded、form-data、file、GraphQL)、例応答、環境および変数をサポートしています。このスキーマはschema.getpostman.com/json/collection/v2.1.0/collection.jsonに公開されており、すべての現代的なAPIクライアントでサポートされています。
-
なぜ :method、:path などは削除されるのですか?
これらはHTTP/2の擬似ヘッダーであり、ブラウザがプロトコル層で発行するものであり、実際のHTTPヘッダー名ではありません。これらはHTTP/1.1のヘッダー名として無効であり、Postmanはそれらを送信できません。これらを含めると、インポートされたリクエストがヘッダー検証エラーで失敗します。
-
なぜAuthorizationをPostman変数に置き換えるのですか?
HARキャプチャには、キャプチャ時点での正確なベアラトークンやセッションクッキーが含まれています。そのJSONを共有すると、それらのシークレットが暴露されます。Postman変数({{token}}構文)は実際の値を環境に遅延することで、コレクションをリポジトリに共有しつつ、各開発者が独自の認証情報を入力できるようにします。
-
なぜ応答ボディがHARエクスポートで時々欠落するのですか?
HAR仕様ではcontent.textフィールドがオプションです。ChromeおよびFirefoxは、バイナリ資産や非常に大きな応答に対してデフォルトで応答ボディを省略し、Charlesなどのツールは応答ボディを記録するための明示的な設定が必要です。フィールドが存在しない場合、コンバーターはリクエストとヘッダーをインポートしますが、例応答ボディは空になります。
恵 スコアボードが到着しました!
スコアボード ゲームを追跡する楽しい方法です。すべてのデータはブラウザに保存されます。さらに多くの機能がまもなく登場します!
