====== LU03.A03 - TBD ====== - Bestandteile eine node-Servers kennen. - Basis-Server ausführen können. - Daten via Server abfragen können. - Einfache Serveranpassungen durchführen können. ===== Rahmenbedingungen ===== * Sozialform: individual * Hilfsmittel: Nur Lehrmittel, keine Websuche oder AI * Zeit: 15 Minutes * Erwartetes Resultat: Node-Server, der verschiedene abgefragte Daten am Monitor/Browser ausgibt. ===== Ausgangslage ===== Nachdem Sie die Theorie studiert und die Lernvideos angeschaut habe, sollten Sie nun wissen, was ein Server ist. Jetzt wird es Zeit einen eigenen kleinen Server zu //bauen// bzw. zu programmieren. ===== Auftrag ===== Nachfolgend finden Sie verschiedene Code-Snippets. - Fügen Sie diese zusammen. - Lassen Sie diese laufen - Prüfen Sie Ausgabe im Monitor/Browser ==== 1. Vorarbeiten ==== - Erstellen Sie in Ihrem Visual Studio Code eine Ordner mit dem Titel //lu03_a02// - Gehen Sie im Terminial in diesen neuen Ordner - Installieren Sie alle relevanten JS-Komponenten in diesem Ordner durch die nachfolgenden zwei Codezeilen --> Es werden nun verschiedene Componenten installiert (sichtbar rechts unten im CodeEditor) npm init -y npm install express ==== 2. Server ==== Erstellen Sie ein weiteres File mit dem Titel //server.js// und kopieren den nachfolgenden Code rein. const express = require('express'); const app = express(); const PORT = 3000; // Middleware, damit Express JSON-Daten im Body lesen kann app.use(express.json()); // Unser "Datenbank"-Ersatz let users = ["Alice", "Bob"]; // --- DEINE AUFGABE AB HIER --- // 1. GET ROUTE: Gib das 'users' Array zurück app.get('/users', (req, res) => { // CODE HIER }); // 2. POST ROUTE: Füge einen neuen User hinzu app.post('/users', (req, res) => { const newUser = req.body.name; // Wir erwarten { "name": "DeinName" } if (newUser) { // CODE HIER: User zum Array hinzufügen res.status(201).send(`User ${newUser} wurde hinzugefügt.`); } else { res.status(400).send("Fehler: Kein Name angegeben!"); } }); // --- ENDE DER AUFGABE --- app.listen(PORT, () => { console.log(`Server läuft auf http://localhost:${PORT}`); }); ===== Lösungen ===== [[de:modul:m307:learningunits:lu03:Lösungen:01|LU03.L01]] ---- [[https://creativecommons.org/licenses/by-nc-sa/4.0/|{{https://i.creativecommons.org/l/by-nc-sa/4.0/88x31.png}}]] Volkan Demir