Chcę monitorować ruch websocket (jak sprawdzić wersję protokołu, którego używa klient/serwer) do celów debugowania. Jak miałbym to zrobić? Wireshark wydaje się zbyt niski poziom dla takiego zadania. Propozycje?Jak debugować Websockets?
Odpowiedz
Wireshark Brzmi jak to, co chcesz. Po uzgadnianiu jest bardzo mało ramek lub struktur dla WebSockets (więc chcesz niskiego poziomu), a nawet gdyby był, wireshark wkrótce (lub już) będzie miał możliwość przeanalizowania go i pokazania struktury.
Osobiście często przechwytuję za pomocą tcpdump, a następnie parsuję dane później za pomocą wireshark. Jest to szczególnie miłe, gdy możesz nie być w stanie uruchomić urządzenia, na którym chcesz przechwycić dane (tj. Serwer bez serwerów). Na przykład:
sudo tcpdump -w /tmp/capture_data -s 8192 port 8000
Jeśli masz kontrolę nad serwerem WebSockets (lub proxy), możesz zawsze wydrukować dane wysyłania i odbierania. Zauważ, że ponieważ ramki websocket zaczynają się od '\ x00', będziesz chciał uniknąć drukowania, ponieważ w wielu językach \ x00 oznacza koniec łańcucha.
Jeśli szukasz rzeczywistych danych wysłanych i odebranych, najnowsze Chrome Canary i Chromium mają teraz funkcję kontroli ramki wiadomości WebSocket. Znajdziesz szczegóły w this thread.
A teraz działa również w zwykłym Chrome ... –
To nie działa dla Binary Websocket Frames – ShaBANG
myślę, że należy użyć Wireshark
Steps
- Otwarte wireshark
- Przejdź do przechwytywania i postępuj miech ścieżkę: ładujące> interfejsy> rozpocząć przechwytywanie w odpowiednim urządzeniu.
- Zasady pisania w filtrze
tcp.dstport == your_websoket_port
- Hit zastosować
Potrzebujesz Wireshark 1.6.5 lub nowszy, aby zobaczyć dane w pakietach WebSocket, zobacz https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=6843 – r3m0t
- 1. Jak debugować szablon Jinja2?
- 2. Jak debugować aplikacje Web2py?
- 3. Jak mogę debugować makra?
- 4. Jak debugować udostępnione webworkers?
- 5. Jak debugować gulpfile.js
- 6. Jak mogę debugować AppleScript?
- 7. Jak debugować tunel ssh
- 8. Jak debugować Scala Future?
- 9. Jak debugować SEGV_ACCERR
- 10. Jak debugować projekt Vsix
- 11. Jak debugować Androida ANR?
- 12. Jak debugować interfejs Swing?
- 13. Jak debugować "ImagePullBackOff"?
- 14. Jak debugować wywołanie Rscript
- 15. Jak debugować raporty Jaspera?
- 16. Jak debugować kod Erlang?
- 17. Node.js: jak zdalnie debugować?
- 18. Jak debugować kod asynchroniczny?
- 19. Jak debugować kod AutoMapper?
- 20. Jak debugować aplikację PHP?
- 21. Jak debugować wywołanie grpc?
- 22. Jak debugować aplet cynamonowy?
- 23. Jak debugować ClojureScript
- 24. Jak debugować Aquamacs
- 25. Jak debugować makro preprocesora
- 26. Yesod, WebSockets i Persistent
- 27. Express.js z websockets
- 28. PureScript Halogen i websockets
- 29. Websockets Notification-/Chat-System
- 30. Obsługa Websockets na Androidzie
FWIW obecne wersje Skrzypek pokaże websocket ruchu. – EricLaw
Wszystko czego potrzebujesz to Chrome. Więcej informacji na ten temat: http://stackoverflow.com/questions/8952773/chrome-web-inspector-web-socket-debugging/10525328#10525328. –
Opublikowałem szczegóły dotyczące logowania wiadomości WebSocket przy użyciu Chrome i Wireshark na: https://blogs.oracle.com/arungupta/entry/logging_websocket_frames_using_chrome –