Chrome-Entwicklertools können jetzt WebSocket-Frames auflisten und die Daten auch dann überprüfen, wenn die Frames nicht binär sind.
Prozess:
- Starten Sie die Chrome Developer-Tools
- Laden Sie Ihre Seite und initiieren Sie die WebSocket-Verbindungen
- Klicken Sie auf die Registerkarte Netzwerk .
- Wählen Sie die WebSocket-Verbindung aus der Liste links aus (sie hat den Status "101 Switching Protocols").
- Klicken Sie auf die Unterregisterkarte Nachrichten . Binäre Frames werden mit einem Längen- und Zeitstempel angezeigt und geben an, ob sie maskiert sind. Textrahmen zeigen auch den Nutzlastinhalt.
Wenn Ihre WebSocket-Verbindung Binärframes verwendet, möchten Sie wahrscheinlich weiterhin Wireshark zum Debuggen der Verbindung verwenden. Wireshark 1.8.0 hat Dissektor- und Filterunterstützung für WebSockets hinzugefügt. Eine Alternative finden Sie in dieser anderen Antwort .
Chrome Canary und Chromium verfügen jetzt über die WebSocket-Funktion zur Überprüfung von Nachrichtenrahmen. Hier sind die Schritte, um es schnell zu testen:
Hinweis : Jedes Mal, wenn Sie neue Nachrichten senden oder empfangen, müssen Sie das Hauptfenster aktualisieren, indem Sie links auf den Eintrag echo.websocket.org klicken.
Ich habe die Schritte auch mit Screenshots und Videos gepostet .
Mein kürzlich veröffentlichtes Buch, The Definitive Guide to HTML5 WebSocket , enthält auch einen speziellen Anhang zu den verschiedenen Inspektionstools, einschließlich Chrome Dev Tools, Chrome Net-Internals und Wire Shark.
quelle
Sie scheinen ständig Dinge in Chrome zu ändern, aber hier ist, was gerade funktioniert :-)
Zuerst müssen Sie auf die rote Aufnahmetaste klicken, sonst erhalten Sie nichts.
Ich habe das noch nie bemerkt,
WS
aber es filtert die Web-Socket-Verbindungen heraus.Wählen Sie es aus und Sie können die Frames sehen, die Ihnen Fehlermeldungen usw. anzeigen.
quelle
Wenn Sie keine Seite haben, die auf den Websocket zugreift, können Sie die Chrome-Konsole öffnen und Ihr JavaScript eingeben:
Dadurch wird der Web-Socket geöffnet, sodass Sie ihn auf der Registerkarte "Netzwerk" und in der Konsole sehen können.
quelle
Die anderen Antworten beziehen sich auf das häufigste Szenario: Beobachten Sie den Inhalt der Frames (Entwicklertools -> Registerkarte Netzwerk -> Klicken Sie mit der rechten Maustaste auf die Websocket-Verbindung -> Frames).
Wenn Sie weitere Informationen benötigen, z. B. welche Sockets derzeit geöffnet / inaktiv sind oder diese schließen können, ist diese URL hilfreich
quelle
Sie haben drei Möglichkeiten: Chrome (über die Entwicklertools -> Registerkarte "Netzwerk"), Wireshark und Fiddler (über die Registerkarte "Protokoll"), die jedoch alle sehr einfach sind. Wenn Sie ein sehr hohes Verkehrsaufkommen haben oder jeder Frame sehr groß ist, wird es sehr schwierig, sie zum Debuggen zu verwenden.
Sie können jedoch Fiddler mit FiddlerScript verwenden, um den WebSocket-Verkehr auf dieselbe Weise zu untersuchen, wie Sie den HTTP-Verkehr erwarten. Einige Vorteile dieser Lösung bestehen darin, dass Sie viele andere Funktionen in Fiddler nutzen können, z. B. mehrere Inspektoren (HexView, JSON, SyntaxView), Pakete vergleichen und Pakete suchen usw.
Weitere Informationen finden Sie in meinem kürzlich verfassten Artikel zu CodeProject, in dem gezeigt wird, wie Sie den WebSocket-Verkehr mit Fiddler (mit FiddlerScript) debuggen / überprüfen. http://www.codeproject.com/Articles/718660/Debug-Inspect-WebSocket-traffic-with-Fiddler
quelle
Ich poste dies nur, da Chrome viele Änderungen vornimmt und keine der Antworten auf dem neuesten Stand war.
quelle
Kurze Antwort für Chrome Version 29 und höher:
quelle
Mit den Chrome-Entwicklertools können Sie Handshake-Anforderungen anzeigen, die während der geöffneten Verbindung noch ausstehen. Soweit ich weiß, können Sie jedoch keinen Datenverkehr sehen. Sie können es jedoch zum Beispiel schnüffeln .
quelle
Ich habe die Chrome-Erweiterung Simple WebSocket Client v0.1.3 verwendet , die vom Benutzer hakobera veröffentlicht wird. Es ist sehr einfach zu verwenden, da es das Öffnen von Websockets unter einer bestimmten URL, das Senden von Nachrichten und das Schließen der Socket-Verbindung ermöglicht. Es ist sehr minimalistisch.
quelle
Für ein Tool, das ich verwendet habe, schlage ich Firecamp vor. Es ist wie Postman, unterstützt aber auch Websockets und socket.io.
quelle