3. Interaktion mit dem Server
Bis jetzt waren alle unsere Seiten statisch. Das heißt, wir haben HTML und CSS nur verwendet, um Texte und Inhalte zu formatieren. Wir haben HTML also im Prinzip wie Latex verwendet. Auch haben wir bis jetzt keinen Web-Server benötigt. Ab jetzt wird das aber nicht mehr ausreichen, denn
- normalerweise liegen die HTML-Seiten, die wir anschauen wollen, nicht auf unserem Rechner selbst, sondern "irgendwo im Web";
- wir wollen nicht nur Seiten anschauen, sondern interagieren: wir wollen suchen, übersetzen, E-Mails verschicken, Inhalte posten, Sachen kaufen, etc.
Für Punkt 1 benötigen wir einen Webserver (auch HTTP-Server genannt). Der kann auch lokal auf Ihrem Rechner laufen. Damit wir echte "Web-Experience" haben, habe ich auf AWS (Amazon Web Services) einen virtuellen Rechner eingerichtet, auf dem zur Zeit mehrere Webserver laufen.
Für Punkt 2 (und auch für Punkt 1) müssen Sie eine weitere Sprache lernen: Javascript. Zwar kann man den HTTP-Server in jeder beliebigen Sprache schreiben, wir tun es aber der Einfachheit halber in Javascript, weil Sie das für interaktive Webseiten sowieso brauchen werden.
3.1 Aufwärmübungen
Stellen Sie sicher, dass Sie Node.js installiert haben. Das sollte im Rechnerraum bereits der Fall sein. Falls Sie es auf Ihrem Rechner installieren sollen, geben Sie ein:
npm install --global http-server
Erstellen Sie eine HTML-Seite example.html
, füllen Sie diese
mit etwas HTML (ein kurzer Satz reicht, aber fügen Sie irgendwelche
HTML-Formatierungsbefehle
ein, wie <strong>
oder <em>
, damit man dann auch
optisch
erkennt, dass es
HTML ist) und speichern Sie diese in einem
Verzeichnis. Öffnen Sie eine Konsole, gehen Sie in dieses Verzeichnis und
starten Sie den http-server
auf Port 8080 mittels
http-server . -p 8080
Öffnen Sie nun einen Browser und geben folgenden URL ein:
localhost:8080/example.html
Schauen Sie nun zurück auf die Konsole, auf der
http-server
läuft und lesen Sie den Output.
Erstellen Sie eine Kopie von example.html
und nennen diese
example.txt
. Der Inhalt soll aber genau der gleiche sein.
Wiederholen Sie die vorherige Übung, geben Sie in Ihrem Browser aber
localhost:8080/example.txt
ein.