Vad är WebSocket-protokollet?

WebSocket är ett standardiserat internetprotokoll (RFC 6455) som tillhandahåller full-duplex, persistenta kommunikationskanaler över en enda TCP-anslutning. Till skillnad från HTTP, som följer en request–response-modell där klienten måste initiera varje utbyte, tillåter WebSocket både klienten och servern att skicka meddelanden när som helst efter att anslutningen har upprättats. Anslutningen börjar som en HTTP-uppgraderingsbegäran och växlar sedan till WebSocket-ramprotokollen, vilket håller socketen öppen tills någon av sidorna uttryckligen stänger den.

WebSocket används ofta i applikationer som kräver låg latens och realtidsuppdateringar: chattapplikationer, live-instrumentpaneler, flerspelarspel, samarbetsredigerare och finansiella dataflöden.

Verktygsbeskrivning

Det här verktyget tillhandahåller en interaktiv WebSocket-klient som körs helt i webbläsaren. Anslut till valfri WebSocket-server med en ws://- eller wss://-URL, komponera text- eller JSON-meddelanden, skicka dem och se serverns svar visas i en tidsstämplad logg. Det är användbart för att testa serverbeteende, felsöka meddelandeformat och utforska WebSocket-API:er utan att skriva någon kod.

Funktioner

  • Text- och JSON-lägen — skriv meddelanden som vanlig text eller växla till JSON-läge med syntaxmarkering och nyttolastvalidering före sändning.
  • Tidsstämplad meddelandelogg — varje mottaget meddelande, anslutningshändelse och fel registreras med tidpunkten för när det inträffade, vilket gör det enkelt att spåra händelsesekvensen.
  • Förinställda och anpassade servrar — anslut snabbt till en inbyggd echo-server för omedelbar testning, eller ange valfri anpassad WebSocket-URL och spara den för återanvändning.

Alternativ förklarade

Server-URL — en ws:// (okrypterad) eller wss:// (TLS-krypterad) WebSocket-URL, t.ex. wss://echo.example.com/ws. URL:en måste peka på en slutpunkt som stöder WebSocket-protokollet.

Beredskapstillstånd — visas i utdataområdet och återspeglar det aktuella anslutningstillståndet: CONNECTING (handskakningsprocess pågår), OPEN (ansluten och redo), CLOSING (stängningshandskakningsprocess pågår) eller CLOSED (anslutningen avslutad).

Datatyp — växla mellan Text- och JSON-kompositionslägen. I JSON-läge validerar redigeraren nyttolasten och visar ett syntaxfel om JSON:en är felaktig.

Autoscroll — när det är aktiverat rullas meddelandeloggen automatiskt till den senaste posten.

Hur det fungerar

Verktyget öppnar ett inbyggt webbläsar-WebSocket-objekt som pekar på mål-URL:en. Efter att HTTP-uppgraderingshandskakingen är slutförd går anslutningen in i OPEN-tillståndet och meddelanden kan flöda i båda riktningarna. Alla message-händelser från servern fångas och läggs till i loggen. Om du klickar på Koppla från utlöses en ren stängningshandskakningsprocess.

Tips

  • Använd den inbyggda wss://echo.rapidtoolset.com/ws-förinställningen för att verifiera att din webbläsare kan upprättas en WebSocket-anslutning alls. Echo-servern returnerar varje meddelande du skickar.
  • Om anslutningen förblir i CONNECTING på obestämd tid kan en brandvägg eller proxy blockera WebSocket-uppgraderingsbegäran.
  • wss:// (WebSocket över TLS) krävs på HTTPS-sidor på grund av webbläsarens begränsningar för blandat innehål; vanliga ws://-anslutningar kommer att blockeras.
  • För testning av Socket.IO-servrar använder du Socket.IO Test Client, och för SockJS-servrar använder du SockJS Test Client — båda använder olika underprotokoll som är inkompatibla med det här verktyget.