Introduction
What are WebSockets?
The Problem with HTTP/1.1
HTTP/1.1 Chat Room Example
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β HTTP/1.1 Chat (Polling Required) β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ€
β β
β Alice sends message: β
β POST /chat/bob {"message": "Hello Bob"} β Server β 200 OK β
β β
β Bob must POLL for messages: β
β GET /messages β Server β {"messages": []} β
β GET /messages β Server β {"messages": []} β
β GET /messages β Server β {"messages": ["Hello Bob"]} β Finally! β
β β
β Problem: Lots of unnecessary traffic, inefficient β
β β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββWebSocket Solution
WebSocket Protocol Schemes
Scheme
Description
WebSocket Connection Establishment
Step 1: Client Initiates Handshake
Important Request Headers
Header
Value
Purpose
Step 2: Server Responds
Response Headers
Header
Value
Purpose
Step 3: Connection Established
Summary
Last updated