Inhaltsverzeichnis

HTTP dynamisch bis hin zum Application Server

Dynamik im Server...

Wenn ein Server nicht stumpf Ressourcen ausliefert (also z.B. einen Request 1:1 mit einer bestimmten Datei beantwortet), dann beginnt Dynamik.

Dazu kann er

Werden die Zustände bestimmter Clients auch über Sitzungen hinweg gespeichert (in einer Datenbank) oder folgen Requests/Response einer programmatischen Ablauflogik, dann mutiert der Webserver allmählich zum Application Server.

Die „programmatische“ Auswertung der URL eines Requests wurde schon in einem früheren Kapitel angedeutet.

... und im Client.

Der Browser kann natürlich auch dynamisch sein und nicht nur die HTML Seite gut darstellen,

Unter anderem gibt es mit JavaScript eine Möglichkeit, wie in das HTML-Dokument Code eingebettet werden kann, der nach Aufbau der HTML-Darstellung durch den Browser interpretiert wird und mit dem

Beispiel

(ein zugegeben etwas einfältiges…)

Szenario: Die Webseite soll die Uhrzeit anzeigen!

<html>
    <body>
12:05:31
    </body>
</html>

Der kleine Teil des Programmcodes sieht dann wie folgt aus (das ganze ist eingebettet in ein Python Web-Application-Framework namens web2py):

import datetime
 
# ---- index page ----
def index():
    clock = datetime.datetime.utcnow().strftime("%H:%M:%S")
    return dict(message=clock)
<!DOCTYPE html>
<html>
 
<body onload="startTime()">
 
<div id="clock"></div>
 
<script>
function startTime() {
    const today = new Date();
    let hh = today.getHours();
    let mm = today.getMinutes();
    let ss = today.getSeconds();
     hh = (hh < 10) ? "0" + hh : hh;
     mm = (mm < 10) ? "0" + mm : mm;
     ss = (ss < 10) ? "0" + ss : ss;
 
    document.getElementById('clock').innerHTML =  hh + ":" + mm + ":" + ss;
    setTimeout(startTime, 1000);
  }
</script>
 
</body>
</html>

HTTP Erweiterung...

oder Zurück zum Anfang