Frage Suche nach HTTP-Debugging-Proxy für Mac ähnlich wie Fiddler unter Windows [geschlossen]


In früheren Jobs habe ich gearbeitet, wenn ich an einer Windows-Maschine gearbeitet habe Geiger zum Anzeigen von HTTP-Transaktionen und Debugging.

Ich suche speziell die HTTP-Transaktionen für eine Ajax-Site, an der ich arbeite, zu überprüfen, dass die Site das tut, was ich erwarte. Das Umschreiben von HTTP (wie von Fiddler zur Verfügung gestellt) ist ein netter, aber nicht notwendiger.

Kann jemand etwas ähnliches für die Verwendung auf einem Mac empfehlen?


229


Ursprung


Dies wurde geschlossen, ist aber immer noch vorhanden und muss hinzugefügt werden: Fiddler ist jetzt in Alpha für das Mac OS. - boomhauer
Ich weiß nicht, warum das geschlossen wäre? es hat 113 upvotes. Es ist nicht so, als wäre das eine Frage nach dem Stack-Überlauf. - JaJ
Lesen Sie das Grundprinzip direkt über diesen Kommentaren - "Fragen, die Produkt-, Service- oder Lernmaterialempfehlungen suchen, sind nicht zum Thema" - Doug Harris
Fireup Fiddler auf nahegelegenen Windows-Rechner und konfigurieren Sie Ihren MAC Proxy über Windows-Rechner und voila! alles auf deinem MAC wird unter Windows zu sehen sein :) - Korayem
FYI, für diejenigen, die wirklich begeistert waren, @boomhauers Kommentar zu lesen: Fiddler for OSX ist immer noch in Alpha, zuletzt im Juli 2013 berührt, benötigt es das Mono-Framework (also ist es im Grunde nur ein Wrapper für die Windows-Version, nicht wirklich für Cocoa re-factored), und die Veröffentlichung hat den Hinweis: "Mac Hinweis: Die WinForms Das Framework auf dem Mac ist fast unbrauchbar. Am besten ist es, wenn Sie Fiddler in einer Linux- oder Windows-Virtual Machine ausführen und die Proxy-Einstellungen des Macs darauf ausrichten. " - Anthony


Antworten:


Verwende Chrome und navigiere zu chrome: // net-internals /

Es ermöglicht eine detaillierte Analyse und Dumps.


127



Nett. Irgendeine Idee, wenn das zu Chrom hinzugefügt wurde? - Doug Harris
Nein Entschuldigung. Ich habe früher mit Fiddler auf Windows gearbeitet, bin aber auf einen Mac gestolpert und bin über Net-Internals gestolpert, während ich nach versteckten Chrome-Features gesucht habe. - brains_at_work
Das ist fantastisch! Vielen Dank!!! - w00t
Dieses Tool scheint "ordentlich" zu sein, aber wie können Sie die gesamte Nutzlast der Anfrage sehen (d. h. Kopfzeilen der GET-Anfrage?) - JaJ
Dieses Tool scheint nur Chrom-Traffic zu erfassen. Gibt es eine Möglichkeit, dieses Tool zu verwenden, um http-Verkehr von / zu einem bestimmten Prozess zu erfassen? - morpheus


ich fand Charles Proxy. Es ist viel näher an der Funktionalität von Fiddler. Es ist nicht kostenlos, aber es kann den Preis wert sein.


68



Nur neugierig: Hat jemand hier jemals benutzt? - Arjan
Ich benutzte es für ein oder zwei Stunden, nachdem ich es gefunden hatte. Die Testversion hat einige Nags und eine 30-minütige Einschränkung, aber ich denke nicht, dass das unangemessen ist. Ich suchte nach bestimmten Kopfzeilen in der HTTP-Antwort, und ich konnte diese einfach sehen. - Doug Harris
Das Schöne an Charles ist, dass es sowohl für OSX als auch für Windows verfügbar ist. Wenn Sie also häufig hin- und herwechseln, ist es ein nettes, gemeinsames Werkzeug. - Justin Ohms
Eine wichtige Funktionalität, die charles (und fiddler und vielleicht webscarab) bietet, ist die Fähigkeit, Anfragen abzufangen und zu modifizieren, einschließlich der https-Entschlüsselung. - urban_raccoons
Ich benutze Charles, um Instagram, Facebook und andere https-Anfragen für mobile Apps zu entschlüsseln. Richten Sie den iPhone Proxy einfach auf Charles und ich kann sehen, wie sie Daten senden und welche Daten sie senden! - Mário Carvalho


Meine Lieblings-Mac-App zur Überwachung des Datenverkehrs ist HTTPScoopGenau das mache ich auch, indem ich tcpdump von der Befehlszeile aus verwende diesen Beitrag habe ich letztes Jahr gebloggt.


30



Wenn Sie zufällig Wireshark (oder den weniger leistungsstarken Cocoa Packet Analyzer) kennen: Können Sie HTTPScoop damit vergleichen? - Arjan
Es ist ein bisschen einfacher, aber viel einfacher zu benutzen als wireshark IMO. Sehr einfach zu starten und zu überwachen HTTP-Verkehr mit, aber weniger geschickt bei der Überwachung anderer Arten von Verkehr. Ich kenne Kakaopaketanalysator nicht. - Ted Naleid
Cocoa Packet Analyzer ist auch ziemlich einfach. Ich habe jedoch nie herausgefunden, wie bestimmte Port- oder Server-IP-Adressen gefiltert und dann angezeigt werden beide die Anfrage und Antwort ... Das ist einfach in Wireshark. (Schreib einfach smtp als Anzeigefilter, um den gesamten Datenverkehr zu sehen, der das SMTP-Protokoll verwendet. Oder tcp.port == 25 um den gesamten Verkehr zu Port 25 zu bekommen, und seine Antworten. Oder http and ip.addr == xxx um den gesamten HTTP-Verkehr von und zu einem Server zu bekommen.) - Arjan
httpscoop sah vielversprechend aus, leider scheint es aufgegeben zu werden und ich konnte den localhost-Verkehr auf 10.9.2 nicht erfassen. Die letzte Veröffentlichung stammt aus dem Jahr 2009 und die Website touts und kommenden v2.0, die nicht zu erscheinen scheint: / - Jean
funktioniert nicht für mich - János


Ich habe gebraucht Mitgefühl zum Abfangen von HTTP-Verkehr. Es ist ein großartiges Werkzeug, und Sie können es für das Debuggen von mobilen Geräten sowie jedem Betriebssystem für diese Angelegenheit verwenden.


26



ZIEHEN SIE DIESES! Übrigens, für alle Script-Kiddies, wenn Sie Code in etwas anderem als JS schreiben, das im Browser sitzt, ist dieses Ding DAS Ticket. - Shane


Nicht das, was Sie gefragt haben, aber in Firefox Live HTTP Header Add-On ist alles, was ich brauche, wenn ich Anfragen bearbeiten und erneut abspielen möchte, einschließlich der Änderung der URL und der HTTP-Methode.

Live HTTP Headers

In Firebug, der Netzwerküberwachung zeigt alle Anfragen und Antworten an. Ebenso in Safari Ressourcenbereich Der integrierte Web Inspector deckt die meisten meiner Bedürfnisse ab. (Aktivieren Sie den Web Inspector über die Einstellungen: Entwicklungsmenü in der Menüleiste anzeigen.) Chrome und Firefox haben ähnliche Tools.

Wenn die Dinge komplizierter werden, feuere ich meine Wireshark Paket-Sniffer. Im Gegensatz zu Fiddler lässt Wireshark das nicht zu Veränderung die Daten, und unterstützt keine Dinge wie Auto-Responder, wie Fiddler anscheinend tut.

Für Wireshark, siehe Hypertext-Übertragungsprotokoll (HTTP) für einige allgemeine HTTP-Erfassungsinformationen und HTTP Packet Capturing zum Debuggen von Apache, für ein Beispiel Anzeige Filter. (Vielleicht möchten Sie die Erfassung Filter zu "port 80", um alle Anfragen anzuzeigen zu dieser Port und Antworten von dieser Hafen. Oder, um auf einen Server zu beschränken, verwenden Sie Erfassung filtern "port 80 and host www.google.com".) Mögen:

# Zeige nur 404: Seite nicht gefunden
http.response.code == 404

# Zeige nur bestimmte HTTP-Methoden
http.request.method == "POST" || http.request.method == "PUT"

# Zeige nur Javascript
http.content_type enthält "Javascript"

Beachten Sie, dass Wireshark gzip entpacken oder komprimierte (komprimierte) Dinge im laufenden Betrieb für Sie dekomprimieren kann. Das macht es wesentlich einfacher zu lesen, da die meisten Webserver die Daten, die sie an einen Browser senden, komprimieren.

(Wie für Auto-Responder: die ausgezeichnete JS-Behälter hat ein kurzes Video darüber, wie man es benutzt, um Ajax-Anfragen zu debuggen. Wenn Sie JS Bin nicht kennen, sehen Sie sich zunächst das Einführungsvideo an.)


19



+1 für Firebug - Ich liebe ihr Netzwerk-Monitoring-Tool - Josh
Ich habe es versucht, aber ich konnte keine neue Anfrage an eine andere URL (in der gleichen Domäne) machen und konnte nicht finden wie (von einem GET zu einem POST zum Beispiel). - Purefan
@ Purefan, ohne weitere Details können wir nicht helfen; Es funktioniert für mich, siehe Screenshot, den ich gerade hinzugefügt habe. Sie sind vielleicht hineingelaufen mozdev.org/bugs/show_bug.cgi?id=25831 - Arjan


Neben Charles (schon erwähnt), mag ich auch die HttpFox Add-on für Mozilla Firefox. Wie Charles kannst du es sowohl auf Mac als auch auf Windows verwenden. Es ist leichter als Charles, weil es im Browser lebt und nützlich für die schnelle Fehlerbehebung ist. Hier einige Informationen von der HttpFox-Seite:

HttpFox überwacht und analysiert den gesamten eingehenden und ausgehenden HTTP-Verkehr   zwischen dem Browser und den Webservern.

Es zielt darauf ab, die von Tools wie HttpWatch oder   IEInspector für den Firefox-Browser.

Informationen pro Anfrage enthalten:

  • Anforderungs- und Antwortheader
  • Gesendete und empfangene Cookies
  • Querystring-Parameter
  • POST-Parameter
  • Antwort Körper

Und ein Screenshot:

Screenshot of HttpFox add-on for Mozilla Firefox


7



Dies ist nicht kompatibel mit den neueren Versionen von Firefox (Firedox 57 und Firedex Developer Edition 57) - Promather


Kein Proxy, aber es hilft beim Debuggen von HTTP:

Starten Sie einfach einen Scan auf der Oberfläche, auf der Sie den HTTP-Datenverkehr haben möchten, führen Sie den Datenverkehr aus und hören Sie dann auf zu scannen und geben Sie "HTTP" als Filter-String ein. Sie können dann alle Pakete der HTTP-Konversation überprüfen. Wenn die Ansicht "Paketdetail" geöffnet ist, können Sie den HTTP-Abschnitt öffnen, der zwischen den Paketen geöffnet bleibt.

Es ist ein großartiges Tool zu haben und es erfordert nicht, dass Sie den Browser-Proxy ändern. Auf der anderen Seite kann es nicht mit HTTPS-Verkehr helfen, da dies verschlüsselt ist. (Obwohl es kann SSL-Verbindungen entschlüsseln, die RSA verwenden)


6



Nur ein Update: Wireshark tut sich unter OS X schwer. Es benötigt X11, das nicht mehr in OS X enthalten ist, so dass Sie am Ende etwa 200MB Disk zusammen verwenden. - Marko Bonaci
Nur ein Update auf @MarkoBonaci update, Wireshark 2.x läuft jetzt super auf OSX dedited die Notwendigkeit für X11. - stedotmartin
@stemartin Danke für die Info. - Marko Bonaci
@MarkoBonaci - Sie sollten stattdessen nur mit qt installieren. - arcseldon


Ich bin spät dran, aber ich benutze es Paros-Proxy. Es ist in Java, also plattformübergreifend. Obwohl, wenn Sie möchten, dass es als eine App verpackt wird, gibt es eine Hier unten.


5





Vergessen Sie nicht Burp Suite. Sie haben eine kostenlose Version. Es ist plattformübergreifend. http://portswigger.net/burp/


4





Es scheint, dass das freie GlimmerBlocker kann einen Teil des Tricks machen.

Natürlich kann es alle Arten von Inhalten blockieren, und verwandeln Antworten, bevor der Browser sie empfängt. Aber es kann tatsächlich Ändern Sie beide Anforderungen und Antworten. Und obwohl es kein echtes Debugging ist, bietet es auch Protokollierung. Also könnte es passen Grundbedürfnisse:

Es gibt 4 Arten von Skripten, die in GlimmerBlocker ausgeführt werden, und einige Objekte sind nur für einige der Skripttypen definiert:

  • globaler Proxy: Hier werden die globalen Proxy-Einstellungen festgelegt, und sie können z. Standortname, AirPort-Netzwerk.
  • Änderungsanforderung: Dies kann die angeforderte URL ändern, eine Weiterleitungsantwort an den Browser senden oder Text / HTML zurück an den Browser senden.
  • Keyword-Erweiterung [Nur Safari, AvB]
  • transform: Ändere die vom Web-Server empfangene Antwort, bevor sie an Safari [oder an einen anderen Browser, der den von GlimmerBlocker, AvB bereitgestellten Proxy verwendet, gesendet wird].

(Man kann es auch verwenden, um verschiedene Greasemonkey-Skripts in die empfangene Antwort einzuschließen, ohne ein Greasemonkey-Add-On zu verwenden, wie z um Flash zu blockieren ohne ein Add-on zu installieren.)


2



GlimmerBlocker ist ein interessantes Werkzeug, aber anders als das was ich suche. Ich habe die ursprüngliche Beschreibung erneut bearbeitet, um die Beispiele für das Neuschreiben zu entfernen und klarzustellen, dass ich nur den Datenverkehr überwachen und ihn nicht transformieren möchte. - Doug Harris