Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
| Beide Seiten der vorigen Revision Vorhergehende Überarbeitung Nächste Überarbeitung | Vorhergehende Überarbeitung | ||
| de:modul:m307:learningunits:lu03:aufgaben:02 [2026/05/03 12:53] – vdemir | de:modul:m307:learningunits:lu03:aufgaben:02 [2026/05/04 09:07] (aktuell) – vdemir | ||
|---|---|---|---|
| Zeile 1: | Zeile 1: | ||
| - | ====== LU03.A01 ====== | + | ====== LU03.A02/L02 - Datenmanagement mit Node-Server |
| - Programmierung eines Node.js Webservers, der mittels GET ein Liste von Namen mittels ausgibt. | - Programmierung eines Node.js Webservers, der mittels GET ein Liste von Namen mittels ausgibt. | ||
| - Programmierung eines Node.js Webservers, der in eine Liste einen Namen mittels POST hinzufügt. | - Programmierung eines Node.js Webservers, der in eine Liste einen Namen mittels POST hinzufügt. | ||
| Zeile 5: | Zeile 5: | ||
| ===== Rahmenbedingungen ===== | ===== Rahmenbedingungen ===== | ||
| * Sozialform: individual | * Sozialform: individual | ||
| - | * Hilfsmittel: | + | * Hilfsmittel: |
| * Zeit: 20 Minuten | * Zeit: 20 Minuten | ||
| * Erwartetes Resultat: Node-Server, | * Erwartetes Resultat: Node-Server, | ||
| ===== Ausgangslage ===== | ===== Ausgangslage ===== | ||
| - | Wir haben die Grundfunktionen eine Webservers in der letzten Aufgabe kennen gelernt. Nun wollen wir speziefischer werden und die Methoden POST und GET geziehlt | + | Wir haben die Grundfunktionen eine Webservers in der letzten Aufgabe kennen gelernt. Nun wollen wir speziefischer werden und die Methoden POST und GET gezielt |
| **Hinweis: | **Hinweis: | ||
| + | |||
| + | ===== Vorarbeit ===== | ||
| + | - Installieren Sie im Visual Studio Code das Framework " | ||
| + | - npm init -y: package.json-Datei wird erstellt, dass alle Abhängigkeiten des Projektes verwaltet. | ||
| + | - npm install express: Installation des express-Frameworks mit wichtigen Funktionen/ | ||
| + | |||
| + | ==== Projekt-Abhängigkeiten verwalten ==== | ||
| + | < | ||
| + | npm init -y | ||
| + | </ | ||
| + | |||
| + | **Ergebnis** | ||
| + | Das Ergebnis im Terminalfenster von Visual Studio Code sollte wie folgt aussehen. | ||
| + | |||
| + | {{: | ||
| + | |||
| + | ==== Framework express installieren ==== | ||
| + | |||
| + | < | ||
| + | npm install express | ||
| + | </ | ||
| + | |||
| + | **Ergebnis** | ||
| + | Das Ergebnis im Terminalfenster von Visual Studio Code sollte wie folgt aussehen. | ||
| + | |||
| + | {{: | ||
| + | |||
| + | |||
| + | |||
| ===== Aufgabe ===== | ===== Aufgabe ===== | ||
| - Kopieren Sie die nachfolgende JS-Vorlage in Ihre Visual Studio Code (Filename lu03_a02.js) | - Kopieren Sie die nachfolgende JS-Vorlage in Ihre Visual Studio Code (Filename lu03_a02.js) | ||
| - Starten Sie den Server | - Starten Sie den Server | ||
| + | - Fragen Sie die Liste der Namen ab durch z.B. die URL: http:// | ||
| + | - Fügen Sie in die Liste Namen hinzu durch z.B. die URL: http:// | ||
| + | - Prüfen Sie durch erneute Abfrage der List, ob Sie erfolgreich einen Namen anhängen konnten. | ||
| | | ||
| <code javascript> | <code javascript> | ||
| + | |||
| const express = require(' | const express = require(' | ||
| const app = express(); | const app = express(); | ||
| Zeile 26: | Zeile 59: | ||
| app.use(express.json()); | app.use(express.json()); | ||
| + | // Unser Datenspeicher im Arbeitsspeicher | ||
| let benutzerListe = [" | let benutzerListe = [" | ||
| // 1. Aufgabe: Die GET-Route vervollständigen | // 1. Aufgabe: Die GET-Route vervollständigen | ||
| app.get('/ | app.get('/ | ||
| - | // Senden Sie hier die benutzerListe | + | // Hier senden wir das gesamte Array als JSON-Antwort |
| res.json(benutzerListe); | res.json(benutzerListe); | ||
| }); | }); | ||
| Zeile 36: | Zeile 70: | ||
| // 2. Aufgabe: Die POST-Route vervollständigen | // 2. Aufgabe: Die POST-Route vervollständigen | ||
| app.post('/ | app.post('/ | ||
| + | // Wir extrahieren den Namen aus dem Request-Body | ||
| const neuerName = req.body.name; | const neuerName = req.body.name; | ||
| | | ||
| if (neuerName) { | if (neuerName) { | ||
| - | // Fügen Sie den Namen dem Array hinzu (Tipp: | + | // Der Name wird mit .push() |
| benutzerListe.push(neuerName); | benutzerListe.push(neuerName); | ||
| + | | ||
| + | // Wir senden eine Erfolgsmeldung mit dem Statuscode 201 (Created) | ||
| res.status(201).send(`Benutzer ${neuerName} wurde erfolgreich gespeichert.`); | res.status(201).send(`Benutzer ${neuerName} wurde erfolgreich gespeichert.`); | ||
| } else { | } else { | ||
| + | // Falls kein Name mitgeschickt wurde, senden wir den Statuscode 400 (Bad Request) | ||
| res.status(400).send(" | res.status(400).send(" | ||
| } | } | ||
| Zeile 50: | Zeile 88: | ||
| console.log(`Ihr Server ist nun unter http:// | console.log(`Ihr Server ist nun unter http:// | ||
| }); | }); | ||
| + | |||
| </ | </ | ||
| ---- | ---- | ||
| + | |||
| [[https:// | [[https:// | ||