Übungsaufgabe 1

 

n      Entwickeln Sie einen minimalistischen Webserver. Entscheiden Sie dabei selbst ob Ihr Webserver mehrere Anfragen gleichzeitig behandeln kann oder nicht. Konzentrieren Sie sich beim parsen des http-Request Headers auf die erste Zeile und implementieren Sie den Befehl GET. Generieren Sie einen http-Response Header, der von einem Browser verstanden wird und auch der Seiteninhalt (HTML Seite, Bilder) angezeigt wird.

n      Entwickeln Sie ihr Programm mit Java und verwenden Sie die Klassen Socket und ServerSocket. Nach eigenem Kenntnisstand können Sie eine Konsolenanwendung oder Fensteranwendung erstellen.

 

Hinweise:

 

Beispiel für http-Response:

clientOut.println("HTTP/1.1 200 OK");

clientOut.println("Content-Type: text/html");

clientOut.println(""); // Header zuende - eine Leerzeile !!!

clientOut.println("<html><body><center>TEST</center></body></html>");

clientOut.flush();

 

Verwenden Sie Datei-Streams um Dateien (HTML, Bilder) zu öffnen und deren Inhalt in clientOut zu schreiben.