WebSockets och realtidssystem med Spring · Lektion

Grunderna i WebSocket-protokollet

Fördjupa Er i det underliggande WebSocket-protokollet, inklusive handskakning, ramar och anslutningens livscykel.

Lektion 3 av 411 steg

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.

Gratis att börja

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

  1. Förstå kommunikation i realtid
  2. WebSockets jämfört med HTTP-pollning
  3. Grunderna i WebSocket-protokollet
  4. Server-Sent Events kontra WebSockets
← Tillbaka till WebSockets och realtidssystem med Spring