forked from WEB-IMB-WS2526/lab-development-imb
55 lines
2.0 KiB
Markdown
55 lines
2.0 KiB
Markdown
# Übungsblatt 06
|
|
|
|
## Nginx-Übung: Eigene Website
|
|
|
|
_Keine Abgabe erforderlich_
|
|
|
|
**Aufgabenstellung**: Nginx installieren und testen:
|
|
|
|
- MacOS: [Installationsanweisungen MacOS](installation_macos.md)
|
|
- Windows: [Installationsanweisungen MacOS](installation_win.md)
|
|
- Linux: [Installationsanweisungen MacOS](installation_linux.md)
|
|
|
|
## Apache-Übung: Eigene Website
|
|
|
|
_Keine Abgabe erforderlich_
|
|
|
|
**Aufgabenstellung**: Apache installieren und testen:
|
|
|
|
- MacOS: [Installationsanweisungen MacOS](installation_macos.md)
|
|
- Windows: [Installationsanweisungen MacOS](installation_win.md)
|
|
- Linux: [Installationsanweisungen MacOS](installation_linux.md)
|
|
|
|
## SWAGGER-Übung
|
|
|
|
**Aufgabenstellung**: Erstellen Sie eine OpenAPI-Spezifikation für die Workshop-Anmeldung aus Übungsblatt 04.
|
|
|
|
#### Arbeitsschritte
|
|
|
|
1. Setzen die OpenAPI-Version auf `3.0.0`.
|
|
2. Setzen Sie Meta-Daten wie Titel und API-Version im Info-Objekt.
|
|
3. Setzen Sie `https://web2-637691723779.europe-west1.run.app` als URL im Servers-Objekt.
|
|
4. Setzen Sie einen **Pfad** `/registrierung` für die HTTP-Methode `POST`. Definieren Sie eine Beschreibung, den Request-Body sowie mögliche Antworten des Servers.
|
|
1. Request-Body für die Übergabe von **Formulardaten**
|
|
2. Request-Body für die Übergabe von **JSON-Daten**
|
|
|
|
_Tipp: Verwenden Sie das Components-Objekt._
|
|
|
|
5. Verwenden Sie Enums (https://swagger.io/docs/specification/v3_0/data-models/enums/) für die Spezifikation der Checkboxen und der Radiobuttons (s. Hinweis unten).
|
|
- Beispiel für `enum` in JSON-OpenAPI:
|
|
```json
|
|
"farbe": {
|
|
"type": "string",
|
|
"enum": ["rot","gruen","blau"],
|
|
"example": "gruen"
|
|
},
|
|
```
|
|
6. Testen Sie Ihre API-Spezifikation mit Swagger.
|
|
|
|
#### Hinweis
|
|
Der serverseitige API-Endpunkt hat sich geändert (neue URL: `https://web2-637691723779.europe-west1.run.app`) und wurde nun folgendermaßen implementiert:
|
|
|
|
1. Für **agb**, **newsletter** und **equipment** werden die Werte (`value`-Attribut) _ja_ und _on_ akzeptiert.
|
|
2. Für **format** werden die Werte (`value`-Attribut) _online_ und _praesenz_ akzeptiert.
|
|
|