Menü
iX Magazin

Erste Implementierungen von WebSockets

vorlesen Drucken Kommentare lesen 93 Beiträge

Ajax hat zwar viele Verbesserungen in Web-Anwendungen ermöglicht, aber es ist noch nicht der Weisheit letzter Schluss. Denn alle Kommunikation geht auch bei dieser Technik weiterhin vom Browser aus. Eine echte bidirektionale Verbindung sollen die vom W3C vorgeschlagenen WebSockets bieten. Interessenten können jetzt mit einer ersten Implementierung experimentieren.

Googles Entwickler haben die Technik in die aktuelle Entwicklerversion ihres Chrome-Browser integriert. Bei Mozilla wird seit Anfang des Jahres ebenfalls daran gearbeitet. Eine JavaScript-Variante der WebSockets-API benötigt Flash im Browser, da sie dessen Socket mitbenutzt. Außerdem gibt es eine JavaScript-Implementierung, die Ähnliches leistet und vom jeweiligen Browser unabhängig sein soll.

Neben der browser-seitigen API benötigt man zum Experimentieren mit WebSockets einen passenden Server. Google stellt dazu eine Python-Anwendung bereit, die sich sowohl als selbstständiger Webserver als auch als Apache-Modul verwenden lässt.

Anwendungen, die die WebSockets-API verwenden, öffnen eine dauerhafte Verbindung zwischen Browser und Server. Ähnlich wie bei Ajax löst das Eintreffen einer Nachricht beim Browser ein Ereignis aus, das ein Event-Handler verarbeitet. Ein Unterschied zur bisherigen Technik besteht darin, dass der Server jederzeit Daten durch eine solche Verbindung senden kann, ohne von der Anwendung per GET- oder POST-Request dazu aufgefordert worden zu sein. Außerdem bleibt der Kanal nach dem open so lange bestehen, bis er explizit per close geschlossen wird.

WebSockets spricht nicht mehr HTTP, sondern ein neues Protokoll. Es soll weniger geschwätzig sein, da es nach dem Festlegen der Verbindungsparameter auf den Austausch sich wiederholender Header verzichtet. (ck)