私がWindowsマシンで作業していたときの以前の仕事では、HTTPトランザクションの表示とデバッグに Fiddler を使用しました。
私は、私が取り組んでいるajaxサイトのHTTPトランザクションを監視して、そのサイトが期待したとおりに機能していることを確認することを特に検討しています。 HTTPを書き換えること(Fiddlerが提供するもの)は持っておくべきことですが、必須ではありません。
誰かがMacでの使用に似たようなものを推薦できますか?
私は Charles Proxy を見つけました。それはFiddlerの機能にずっと近いです。それは無料ではありませんが、それは価格の価値があるかもしれません。
Chromeを使用してchrome:// net-internals /に移動します。
それは詳細な分析とダンプを可能にします。
HTTPトラフィックを傍受するために mitmproxy を使用しました。それは素晴らしいツールです、そしてあなたはそれをモバイルデバイスだけでなくその問題のためにどんなオペレーティングシステムでもデバッグするためにそれを使うことができます。
トラフィックを監視するための私のお気に入りのMacアプリは HTTPScoop です。 これでコマンドラインからtcpdumpを使用するだけでなく、詳細を説明します。昨年ブログしました 。
あなたが尋ねたものではありませんが、Firefoxでは Live HTTPヘッダ アドオンだけが、変更を含めてリクエストを編集して再生したい場合に必要なものです。 URLとHTTPメソッド.
Firebugでは、 ネットワークモニタリング にすべての要求と応答が表示されます。同様に、Safariでは、組み込みのWebインスペクタの Resourcesペイン が私のほとんどのニーズをカバーしています。 (環境設定でWebインスペクタを有効にする:メニューバーに現像メニューを表示する。)ChromeとFirefoxには似たようなツールがあります。
事態がより複雑になるとき、私は Wireshark パケットスニファを起動します。しかし、Fiddlerとは異なり、Wiresharkはあなたにデータを変更させせず、Fiddlerのように自動応答のようなものをサポートしません。
Wiresharkについては、一般的なHTTPキャプチャ情報については ハイパーテキスト転送プロトコル(HTTP) を、そして HTTPパケットキャプチャを参照してください。 Apache をデバッグします。いくつかの例の表示フィルタ。 (あなたはキャプチャフィルタを "port 80
"に設定し、そのポートへのすべてのリクエストとからのレスポンスを表示することができます。 その移植版、あるいはサーバーに限定するには、capturefilter "port 80 and Host www.google.com
"を使います。
#404のみを表示:ページが見つかりません http.response.code == 404 #特定のHTTPメソッドのみを表示します http.request.method == " POST "|| http.request.method == "PUT" #javascriptだけを表示する http.content_typeに "javascript"が含まれている
Wiresharkは、gzipを解凍したり、エンコード(圧縮)されたものをその場で圧縮したりできます。ほとんどのWebサーバーはブラウザに送信するデータを圧縮するため、これによって物事がはるかに読みやすくなります。
(自動応答者に関しては:優秀な JS Bin にAjaxリクエストをデバッグするための使い方に関する短いビデオがあります。次に、紹介ビデオをご覧ください。)
Charles(既に述べた)に加えて、私はMozilla Firefox用のHttpFoxアドオンも好きです。 。 Charlesと同様に、MacでもWindowsでも使用できます。 Charlesよりも軽量です。ブラウザ内にあるため、迅速なトラブルシューティングに役立ちます。これがHttpFoxページからの情報です。
HttpFoxは、ブラウザとWebサーバー間のすべての送受信HTTPトラフィックを監視および分析します。
HttpWatchやIEInspectorなどのツールから知られている機能をFirefoxブラウザに持ち込むことを目的としています。
リクエストごとに利用可能な情報は次のとおりです。
- 要求ヘッダーと応答ヘッダー
- 送受信したクッキー
- クエリ文字列パラメータ
- POSTパラメータ
- レスポンスボディ
そして、スクリーンショット:
プロキシではありませんが、HTTPのデバッグに役立ちます。
HTTPトラフィックを送信する予定のインターフェイスでスキャンを開始し、トラフィックを実行してからスキャンを停止し、フィルタ文字列として「HTTP」と入力するだけです。これで、HTTP会話のすべてのパケットを調べることができます。 [Packet Detail]ビューを開くと、HTTPセクションを開くことができ、パケット間で開いたままになります。
それは持っているべき素晴らしいツールです、そして、それはあなたがブラウザプロキシを変えることをあなたに要求しません。一方、HTTPSトラフィックは暗号化されているため、これを利用することはできません。 (ただし RSAを使ったSSL接続を復号化することができます
遅れていますが - 私は Paros Proxy を使います。それはJavaなので、クロスプラットフォームです。アプリとしてパッケージ化したい場合は、一番下に があります 。
バープスイートを忘れないでください。彼らは無料版を持っています。クロスプラットフォームです。 http://portswigger.net/burp/
Free GlimmerBlocker がトリックの一部を行うことができるようです。
もちろん、あらゆる種類のコンテンツをブロックすることができ、ブラウザがそれらを受け取る前に transform レスポンスをブロックすることができます。しかし実際には リクエストとレスポンスの両方を変更することができます 。そして本当のデバッグではありませんが、ロギングも提供します。そのため、 basic needs に適しているかもしれません。
GlimmerBlockerの内部では4種類のスクリプトが実行されており、一部のオブジェクトは一部のスクリプトタイプに対してのみ定義されています。
- グローバルプロキシ:これはグローバルプロキシ設定を設定し、例えば、場所の名前、AirMacネットワーク。
- 変更要求:要求されたURLを変更したり、ブラウザにリダイレクト応答を送ったり、ブラウザにtext/htmlを送り返したりすることができます。
- キーワード展開[Safariのみ、AvB]
- 変換:Safari(またはGlimmerBlocker、AvBが提供するプロキシを使用するように設定されているブラウザ)に返信される前に、Webサーバが受信した応答を変更する。
( のようにアドオンをインストールせずにFlash をブロックするなど、Greasemonkeyアドオンを使用せずに、さまざまなGreasemonkeyスクリプトを受信した応答に含めることもできます。
あなたは彼らのサイト上の指示に従ってParallelsを使って簡単に Fiddler for Mac を設定することができます。
唯一の注意点は、VMのIPアドレスを指すように手動でネットワーク設定を構成する必要があることですが、それほど大きな問題ではありません。
jMeterも役に立つかもしれません。 Webサーバーの負荷パフォーマンスをテストするために設計されていますが、それでも必要なものを実行することがあります。 jMeterはJavaで書かれているので、Mac、Windows、またはLinux上で動作する.jarファイルをダウンロードできます。
Cocoa Packet Analyzer はとても役に立ちます。
あなたが公衆インターネットを介して行くアプリトラフィックやサードパーティのAPI統合を扱っているなら、あなたはRunscopeを試すべきです(そのうち、完全な開示、私は共同創設者です)。任意のURLへのHTTPリクエストをキャプチャし、デバッグ用のNiceストリームビューを提供し、個々のリクエストを他のユーザと簡単に共有できるようにします。
また、 APIKitchen を試すこともできます。これは、HTTP APIやその他の要求全般をデバッグおよびテストするのに役立ちます。内部ネットワークでテストするためのオフライン版もあります。インストールは不要です。