Proxyman の始め方
このチュートリアルでは、Proxyman を使って macOS デバイスからの HTTPS 通信をインターセプトする方法を紹介します。
このブログの内容
- Proxyman を macOS でセットアップする方法
- Proxyman で macOS の HTTP/HTTPS 通信をキャプチャする方法
- Repeat、Edit & Repeat、Map Local、Map Remote、Breakpoint などのデバッグツールを使う方法
1. Proxyman をダウンロード
まずは、最新版の Proxyman を https://proxyman.com からダウンロードしてください。または、現在のバージョンからメニューの「Proxyman -> Check for Update…」を選択して、直接 アップデート することもできます。
2. Proxyman Helper Tool をインストール
Proxyman を起動すると、次の処理が自動的に行われます:
- System Network Preference の HTTP/HTTPS プロキシを 自動的に 上書きします。何もしなくてもすぐに通信を確認できるので、とても便利です。
- Proxyman Helper Tool のインストールを促す表示が出ます。

以下の機能を無料で利用できるため、Helper Tool のインストールを強くおすすめします:
- 高いパフォーマンスで HTTP/HTTPS プロキシを自動的に上書きします。Proxyman を初めて開くときに、そのボトルネックに気づくかもしれません。
- アプリが予期せずクラッシュした場合でも、HTTP/HTTPS プロキシの設定を正しく元に戻します。
3. Proxyman で最初のリクエストを送信する
- Proxyman を開く
- Google Chrome または Safari を開き、https://www.google.com や https://www.producthunt.com、その他好きな Web サイトにアクセスします。
- この時点で、Proxyman によってリクエストがキャプチャされているのが確認できます。

主要な部分は次の 3 つです。
- Source List(左パネル)には、すべてのアプリとドメインが一覧表示されます。
- Request List(中央パネル):選択した Source のすべてのリクエストとレスポンスが表示されます。
- Content(下部パネル)では、すべてのリクエストとレスポンスの内容を確認できます。

3. アプリ/ドメインを検索してピン留め
Ctrl+Shift+F を使うと、アプリやドメインをすばやく検索できます。その後、右側のメニューで「Pin」を選択してください。

4. HTTP/HTTPS のリクエストとレスポンスを復号
ProductHunt アプリの HTTP/HTTPS 通信を平文で確認するには、次の手順に従ってください:
- 左パネルで、対象のドメインまたはアプリを選択します。
- 下部パネルで、このドメインまたはアプリ全体に対して「Enable SSL Proxying」を選択します。

特定のアプリやドメインで SSL を有効にすると、Proxyman はそれらの対象のドメインだけをインターセプトし、それ以外の通信は中継するだけです。その結果、Proxyman が MacBook の CPU に負荷をかけることはなく、MacBook のバッテリーへの負担も小さくなります。
5. Proxyman CA 証明書
他のツールではこの手順が複雑なことを理解しているため、簡単になるように丁寧に設計し直しました。
「Enable SSL Proxying」を有効にすると、Proxyman に証明書インストールのウィンドウが表示されます:
証明書は Automatic または Manual の方法でインストールできます。
- Automatic:Proxyman 証明書のインストールと信頼設定を 1 ステップで行える、便利な方法です。
- Manual:手動でインストールして信頼設定を行えます。上級者向けです。
初めて使う場合は、ワンクリックで完了する Automatic の方法を強くおすすめします。

6. リクエストとレスポンスのプレビュー
Proxyman 証明書 をインストールしたら、デバッグを始めるのに絶好のタイミングです 😋 Proxyman では、HTTPS のリクエストとレスポンスをインターセプトし、整形された JSON ビューアーに自動で表示できるようになりました。
-
Web サイトを再読み込みします。レスポンスが Proxyman でキャプチャされているのが確認できます。 下部パネルの Content から、次の項目に移動できます:
-
Header、Query、Cookies、JSON response
すべてのコンテンツビューアーには、ネイティブの検索バーが組み込まれています。いつものように Ctrl-F を押して、内容を操作したり検索したりできます。

7. デバッグツール
このセクションでは、API をデバッグするのに役立ついくつかのデバッグツールの使い方を紹介します。
7.1 新しいパラメータで Repeat
- リクエストを右クリックし、コンテキストメニューから「Edit & Repeat」を選択します。
- URL、Method、Headers、Body を変更し、新しいパラメータでリクエストを試せます。
- 異なるパラメータで API をテストするのに便利です。

7.2 Proxyman セッションのエクスポート
- 左パネルのリクエストまたはドメインを右クリックし、コンテキストメニューから Export -> Proxyman Log を選択します。
- チームメイトや QA チームとリクエストを共有するのに便利です ❤️ また、Jira や Trello などのプロジェクト管理ツールに、ログセッションを直接添付することもできます。

現在の Proxyman セッションは、HAR ファイルとしてエクスポートすることもできます。
7.3. Multiple Filters
- URL、Method、Status Code などでリクエストをフィルタリングできます。
- 複数のフィルタを作成して、リクエストリストに適用できます。
- 目的のリクエストを見つけるのに便利です。

7.4 Diff ツールで 2 つのリクエストやレスポンスの違いを見つける
- 2 つ以上のリクエストを選択して右クリックし、コンテキストメニューから Tools -> Add to Diff Pool を選択します。新しい Diff ウィンドウが開きます。
- 2 つのリクエストやレスポンスの違いを見つけるのに便利です。

7.5 Map Local で API レスポンスをモック
- リクエストを選択して右クリックし、コンテキストメニューから Tools -> Map Local を選択します。新しいウィンドウが開くので、Response Body、Status Code、Headers などを変更できます。
- ローカルファイルを使って API レスポンスをモックできるので便利です。

7.6 Breakpoint でリクエストとレスポンスをその場で変更
- リクエストを選択して右クリックし、コンテキストメニューから Tools -> Breakpoint -> Create a breakpoint を選択します。

- もう一度リクエストを送信します。Proxyman がブレークポイントで停止するので、リクエストボディ、レスポンスボディ、ステータスコードなどを、その場で変更できます。

その他
- Repeat、Edit & Repeat、Map Remote など、その他のツールも使えます。
- 詳しくは Proxyman ドキュメント をご覧ください。
10. 次のステップ
このブログでは、Proxyman の基本機能と、macOS デバイスから HTTP(s) 通信をキャプチャする方法のみを扱っています。
次の環境で HTTPS 通信をキャプチャしたい場合は:
- iOS デバイス:Proxyman iOS ドキュメント をご覧ください
- iOS シミュレータ:Proxyman iOS シミュレータのドキュメント をご覧ください
- Android デバイス:Proxyman Android ドキュメント をご覧ください
- Android エミュレータ:Proxyman Android エミュレータのドキュメント をご覧ください
- NodeJS、Python、Ruby、PHP など:Proxyman HTTP/HTTPS ドキュメント をご覧ください
便利なアップデート
Proxyman には、Node.js、Python、Ruby などの一般的なコマンドラインアプリ向けの Automatic Setup が追加されました。また、Command Palette を使えば、すべてのメニューを探さなくてもツールを見つけられます。リクエストが表示されない場合は、Mac、スマートフォン、シミュレータ、コマンドラインアプリで設定方法が異なるため、まずドキュメントの最新のデバイス別ガイドを確認してください。
Proxyman は、開発者が iOS デバイス、iOS シミュレータ、Android デバイスのアプリやドメインからの HTTP(s) 通信をキャプチャして確認できる、高性能な macOS アプリです。
入手はこちら:https://proxyman.com/
