4
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

サムザップAdvent Calendar 2017

Day 22

パケットキャプチャツール/Charlesを試してみた

Last updated at Posted at 2017-12-22

本記事はサムザップ Advent Calendar 2017の22日目の記事です。
昨日は@yos316さんの「【Unity】Unity2017.3で追加されたAssembly Definitionをちょっと触ってみた」でした!

#はじめに
アプリ開発していると、端末の通信の内容確認やデバッグを頻繁に行います。

その際こういった内容を確認したくなります。
・レスポンスがちゃんと返ってきているか
・リクエストやレスポンスの内容は正しいか
・任意に通信の内容を書き換えてデバッグ 

代表的なパケットキャプチャツールはWireshark, Charles, Fiddlerなどがあります。
今回はCharlesとiPhone端末を連携させて使ってみた所感などをまとめました。
スクリーンショット 2017-12-22 20.03.46.png

#設定手順
こちらからDLしてインストール。
https://www.charlesproxy.com/download/
Charlesは有料なので、試用版を選択。
(試用版は30日間のみと書いてあるけど、起動のたび広告が出るだけで使い続けられる模様)

まずメニューのProxy → Proxy Settingsを選択。
スクリーンショット 2017-12-22 11.48.48.png

ポート番号を指定(任意の番号でOK)。
スクリーンショット 2017-12-22 11.49.51.png

ローカルPCのIPアドレスを調べる。
メニューのHelp → Local IP Adressから調べることが可能。
後ほどiPhone端末に入力するのでアドレスを控えておく。
スクリーンショット 2017-12-22 11.54.14.png

ローカルPCとiPhone端末を同一のwifiネットワークに接続する。
iPhone端末上にて設定 → Wi-Fi → 使用するネットワークを選択し、
HTTPプロキシ/手動の欄にサーバIP(ローカルPCのIPアドレス)とポート番号を入力
スクリーンショット 2017-12-22 17.08.21.png

以上で設定は完了です。
最初に通信したときに一度だけ認証ウィンドウが出ます。

#使用方法
通信の内容を覗く
2017-12-22_18h15_18 (1).png
Contentsタブから端末の通信の内容を簡単にJSON形式で確認することができます。
すごく見やすい。

リクエスト・レスポンスの値を任意に変更する
2017-12-22_20h16_21.png
右クリックで任意のアクセスにブレイクポイントを設定できます。
ブレイクポイントに設定したアクセスのリクエストを送る前レスポンスが返ってきたときに自動的に止めてくれます。

2017-12-22_20h18_24.png
止めた状態で通信の内容を編集して変更できます。
Executeを押すと変更した内容で通信が送られます。
ブレイクの設定でリクエストでは止めずにレスポンスのみ止めるといった設定も可能です。

#まとめ
設定が楽ちんで、Wiresharkなどに比べて機能も複雑すぎず使いやすいです。

料金体系は会社ごとにライセンス費を払う形式なので、
購入しておくとプロジェクト全体の業務改善化が見込めるかもしれないと感じました。

端末での通信内容を簡単に確認したり、
通信内容を変更して手軽に異常値チェックをしたりなど幅広く使えそうです。


明日は、tomoriaki さんで、
【Unity】SRDebuggerのタブの拡張方法です!

4
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?