# Übungsblatt 08 ## 1. Go-Übung: Routing **Aufgabenstellung**: Erstellen Sie ein einfaches Webserver-Programm in Go, das zwei HTTP-Endpunkte `/login` und `/logout` bereitstellt. Beim Aufruf dieser Pfade soll jeweils eine passende Textnachricht im Browser erscheinen. Verwenden Sie dazu die Standardbibliothek `net/http` und definieren Sie eigene Funktionen zur Übergabe an `HandleFunc`. ## 2. Go-Übung: JSON-Daten empfangen **Aufgabenstellung**: Erweitern Sie den Endpunkt aus Übungsblatt 07 Aufgabe 3 so, dass auch JSON-Daten empfangen und ausgegeben werden können. - Nutzen Sie dazu gerne die zuvor von Ihnen in Übungsblatt 06 definierte SWAGGER-Schnittstelle. - Falls die JSON-Daten fehlerhaft sind, soll der Status-Code 400 (Bad Request) zurückgegeben werden. - Testen Sie Ihren Endpunkt mit `curl`-Befehlen oder wahlweise mit Postman oder SWAGGER. ## 3. Go-Übung: Cookies **Aufgabenstellung**: Erstellen Sie ein einfaches Webserver-Programm in Go, das drei HTTP-Endpunkte `/create-cookie`, `/show-cookie` und `/delete-cookie` bereitstellt. Beim Aufruf dieser Pfade soll entweder ein neuer Cookie mit dem Namen `keks` und einer generierten UUID als Wert erstellt, der Wert im Browser ausgegeben oder der Cookie ganz gelöscht werden. Außerdem soll jeweils eine passende Textnachricht im Browser erscheinen. #### Hinweis Um externe Bibliotheken (z.B. `github.com/google/uuid` zur Erstellung von UUIDs) verwenden zu können, müssen Sie zunächst ein Modul definieren und die Abhängigkeiten darüber verwalten. Eine kurze Anleitung dazu finden Sie hier: [Abhängigkeiten mit go.mod](anleitung_extlib.md)