Web

Datenübertragung

HTML5 - was es kann (Teil 3)

13.03.2011
Von 


Simon Hülsbömer betreut als Senior Research Manager Studienprojekte in der Marktforschung von CIO, CSO und COMPUTERWOCHE. Zuvor entwickelte er Executive-Weiterbildungen und war rund zehn Jahre lang als (leitender) Redakteur tätig. Hier zeichnete er u.a. für die Themen IT-Sicherheit und Datenschutz verantwortlich.

Von Webdokumenten zu Web-Applikationen

Das ursprüngliche Konzept eines Webdokuments sah ein Dokument mit Wörtern und Bildern vor - eingerahmt in ein einziges Rechteck. Im Laufe der Zeit wurde das große Rechteck zwar in viele kleine, mit anderen Hintergrundfarben versehene Rechtecke unterteilt - in allen gab es aber nach wie vor Wörter und Bilder. Da war nicht viel zu spezifizieren. Heute sind Dokumente dank AJAX-Funktionen eher als Software einzustufen - und Software macht sich bemerkbar. Das "Leben" in den Browserfenstern sollte nach dem Willen vieler Programmierer nicht auf jeweils ein Fenster respektive jeweils nur alle Fenster eines Webangebots beschränkt bleiben - warum nicht die Box mit dem Inhalteangebot und die Box mit der Werbung seitens Google AdWords miteinander verknüpfen? Oder warum nicht noch mehr Nutzen aus Widgets ziehen, die beispielsweise Blogger auf ihre Online-Tagebücher satteln, um den Besuchern Wettervorhersage, Spielstände oder Kinozeiten anzuzeigen?

Datentransfer über mehrere Dokumente

Das Entwicklerteam hinter HTML5 bricht eine Lanze für die Idee des Datentransfers über mehrere Dokumente hinweg. Die angesprochenen Rechtecke bauen einen Kommunikationskanal auf, indem sie mittels Quellcode Listener erstellen, die auf Nachrichten anderer Rechtecke warten respektive selbst Nachrichten verschicken - ganz ohne zentralen Server. Die verantwortliche API sorgt dafür, dass der Transfer auf bestimmte Domains beschränkt wird. Es ist nicht möglich, Nachrichten an alle potenziellen Listener zu senden. Der Entwickler legt fest, welche Fenster und Dokumente angesprochen werden. Für einen dauerhaften Austausch legt er Zweiwegekanäle an.

Die Listener-Spezifikation ist noch in der (instabilen) Betaphase, wird aber von nahezu allen Browsern schon unterstützt (Chrome, Firefox, IE, Opera, Safari). Da jede Software mit einer ähnlichen Interlayer-Kommunikation arbeitet, ist es nur eine Frage der Zeit, bis sich das Prinzip auch bei den Entwicklern auf breiter Ebene durchsetzt. Wer seinen Browser testen möchte, kann das hier tun.

Ressourcen-Sharing

Nachrichten zu verschicken ist nicht der einzige Weg, Informationen zwischen Websites auszutauschen. Die API für "Cross-Origin Resource Sharing" (cors) lockert die Kontrolle über AJAX-Befehle und erlaubt jedem außerhalb der Home-Domain den Zugriff. Eine Website kann so eine Liste erlaubter Ziele festlegen, und die XMLHttpRequest-Anfragen sollten funktionieren. Die Informationen darüber stehen im Header des HTML-Dokuments. Damit der Server sie verarbeiten kann, muss er deshalb rekonfiguriert werden - eine Aufgabe für den Administrator, nicht für den Entwickler:

Access-Control-Allow-Origin: http://infoworld.com [9] Access-Control-Max-Age: 10000 Access-Control-Allow-Methods: PUT, DELETE

Dieser Eintrag erlaubt es einer Website, zusätzliche Daten von infoworld.com zu holen und anzuzeigen, die maximal 10.000 Sekunden alt sind.

Neue WebSockets-Spezifikationen sorgen für mehr Interaktivität im WWW. Alles dazu lesen Sie auf der nächsten Seite.