Je winkelwagen is leeg
Producten die je toevoegt, verschijnen hier.
Een websocket is een protocol voor een blijvende verbinding waarover browser en server tegelijk berichten sturen.
Een websocket is een verbinding tussen browser en server die open blijft, zodat beide kanten op elk moment berichten kunnen sturen. Bij gewoon HTTP vraagt de browser iets, antwoordt de server en is het gesprek daarna voorbij. Tweerichtingsverkeer over één open verbinding zoals bij een websocket heet full-duplex communicatie.
Een websocket begint als een normaal HTTP-verzoek met de header Upgrade: websocket, waarop de server antwoordt met statuscode 101 Switching Protocols. Vanaf dat moment loopt het websocketprotocol over dezelfde TCP-verbinding. Adressen beginnen met ws:// of, versleuteld, met wss://. Gebruik altijd wss://, want dat is net als HTTPS beveiligd met TLS.
Websockets zijn ideaal voor toepassingen die direct moeten bijwerken, zoals een chatvenster, live sportuitslagen of een gedeeld document. Zonder websocket moet de browser steeds opnieuw vragen of er iets nieuws is. Die techniek heet polling en kost meer verzoeken en serverkracht.
In JavaScript open je een verbinding met new WebSocket("wss://jouwdomein.nl/chat"). Aan de serverkant heb je software nodig die verbindingen lang openhoudt, vaak een aparte applicatie in bijvoorbeeld Node.js. Een gewone PHP-pagina is daar niet voor gemaakt, omdat die stopt na elk verzoek.
Het websocketprotocol ontstond in 2008 uit discussies onder leiding van Michael Carter. Ian Hickson en Carter bedachten de naam WebSocket in het IRC-kanaal van de WHATWG. Hickson nam het daarna op in de HTML5-specificatie (Wikipedia).
Belangrijke mijlpalen: