Grunderna i WebSocket-protokollet
Fördjupa Er i det underliggande WebSocket-protokollet, inklusive handskakning, ramar och anslutningens livscykel.
Grunderna i WebSocket-protokollet är en gratis lektion i WebSockets och realtidssystem med Spring på CoddyKit. Detta är lektion 3 av 4. Ni kan läsa hela lektionen gratis nedan och sedan öva praktiskt i webbläsaren med en inbyggd kodredigerare och en AI-handledare som är tillgänglig dygnet runt. Den ingår i lärvägen för WebSockets och realtidssystem med Spring, och Era framsteg synkroniseras mellan webben och CoddyKit-appen. Kursen i WebSockets och realtidssystem med Spring innehåller totalt 4 lektioner.
Bortom HTTP: WebSocket-protokollet
WebSockets känns som HTTP men är ett separat protokoll. De öppnar en beständig full-duplex-länk så att data kan flöda i båda riktningarna samtidigt efter konfigureringen.
Börja med en handskakning
Varje WebSocket börjar med en handskakning: klienten skickar en vanlig HTTP-begäran och ber servern uppgradera anslutningen till WebSocket.
Klientens uppgraderingsbegäran
Klientens uppgraderingsbegäran är en HTTP GET med viktiga headerfält: Upgrade: websocket, Connection: Upgrade samt Sec-WebSocket-Key och Version.
Serverns bekräftelse
Om servern godkänner begäran svarar den med 101 Switching Protocols och ett Sec-WebSocket-Accept-headerfält som härletts från klientens nyckel, vilket bekräftar uppgraderingen.
Se handskakningen i praktiken
Se handskakningen själv: kör detta i konsolen, öppna fliken Network och leta efter svaret 101 Switching Protocols.
/*
Open your browser's developer console (F12),
go to the 'Network' tab, then paste and run this code.
Look for a '101 Switching Protocols' response!
*/
let ws = new WebSocket("wss://echo.websocket.org");
ws.onopen = (event) => {
console.log("WebSocket connection opened!");
};
ws.onclose = (event) => {
console.log("WebSocket connection closed!");
};
ws.onerror = (error) => {
console.error("WebSocket error:", error);
};
// We'll send messages in later lessons!Anslutningen är etablerad: full-duplex
Efter handskakningen uppgraderas anslutningen till en rå TCP-länk som är full-duplex: klienten och servern kan skicka och ta emot data oberoende av varandra, när som helst.
Så skickas meddelanden: frames
WebSocket-data färdas i små enheter som kallas frames. Framing gör att stora meddelanden kan delas upp effektivt och stöder olika typer av kontrollmeddelanden.
Olika typer av frames
Varje WebSocket-frame-typ har en uppgift: text för strängar som JSON, binärdata för rådata, ping/pong för pulsslag och close för att avsluta anslutningen.
Anslutningens resa: livscykeln
En WebSocket följer en tydlig livscykel: opening (handskakning), open (utbyte av frames), closing (ordnad nedstängning) och closed.
Snabb kontroll: WebSocket-grunder
Vilka av följande påståenden stämmer om en WebSocket-anslutning efter en lyckad handskakning?
Sammanfattning: WebSocket-protokollets grunder
Ni har klargjort WebSocket-protokollet: en HTTP-handskakning uppgraderar anslutningen till en beständig full-duplex-kanal, data transporteras i frames och anslutningar följer en livscykel. Nästa steg: jämförelser.
Lär dig WebSockets och realtidssystem med Spring med en AI-lärare – gratis
Skriv och kör riktig kod i webbläsaren, få omedelbar hjälp av en AI-lärare dygnet runt och fortsätt där du slutade – på webben eller i appen.
- Kurser
- 12
- Lektioner
- 48
Vanliga frågor
Är lektionen ”Grunderna i WebSocket-protokollet” gratis?
Ja – hela texten till ”Grunderna i WebSocket-protokollet” kan läsas gratis här på webben. Om Ni vill öva interaktivt med en inbyggd kodredigerare och en AI-handledare som är tillgänglig dygnet runt och låsa upp resten av kursen i WebSockets och realtidssystem med Spring, kan Ni uppgradera till CoddyKit PRO. Kursen i WebSockets och realtidssystem med Spring innehåller totalt 4 lektioner.
Vad lär jag mig i ”Grunderna i WebSocket-protokollet”?
Fördjupa Er i det underliggande WebSocket-protokollet, inklusive handskakning, ramar och anslutningens livscykel. Ni övar på WebSockets och realtidssystem med Spring med praktisk kod som körs direkt i webbläsaren, medan en AI-handledare som är tillgänglig dygnet runt svarar på Era frågor under lektionen.
Behöver jag någon erfarenhet för att börja lära mig WebSockets och realtidssystem med Spring?
Du behöver inga förkunskaper. Utbildningen i WebSockets och realtidssystem med Spring på CoddyKit är upplagd för allt från nybörjare till avancerade elever, så att du kan börja här eller från början och gå fram i din egen takt. Detta är lektion 3 av 4.
Hur lång tid tar lektionen ”Grunderna i WebSocket-protokollet”?
De flesta CoddyKit-lektioner tar cirka 5–10 minuter. Varje lektion är kort och interaktiv, så att du gör stadiga framsteg och kan fortsätta precis där du slutade – på webben eller i appen.
Kan jag skriva och köra kod i den här WebSockets och realtidssystem med Spring-lektionen?
Ja. Varje WebSockets och realtidssystem med Spring-lektion innehåller en inbyggd kodredigerare, så att du kan skriva och köra riktig kod direkt i webbläsaren och få omedelbar AI-feedback – utan lokal installation.
Alla lektioner i den här kursen
- Förstå kommunikation i realtid
- WebSockets jämfört med HTTP-pollning
- Grunderna i WebSocket-protokollet
- Server-Sent Events kontra WebSockets