Wir haben die Grundfunktionen eine Webservers in der letzten Aufgabe kennen gelernt. Nun wollen wir speziefischer werden und die Methoden POST und GET gezielt anwenden.
Hinweis: Um diesen zu Programmieren, nutzen wir hierfür das JavaScript-Framework Express, welches in der Branche Standard ist.
npm init -y
Ergebnis Das Ergebnis im Terminalfenster von Visual Studio Code sollte wie folgt aussehen.
npm install express
Ergebnis Das Ergebnis im Terminalfenster von Visual Studio Code sollte wie folgt aussehen.
Das nachfolgende Script enthält einen JSON-Satz, der am Monitor anzeigt. Damit Sie das Script zum laufen bekommen befolgen Sie die nachfolgenden Anweiseungen.
server.js
const express = require('express'); const app = express(); const path = require('path'); // Die Daten der drei Personen const personen = [ { id: 1, name: "Max Mustermann", alter: 28, beruf: "Entwickler" } ]; // Server erstellen const server = http.createServer((req, res) => { // Wichtig: Wir setzen den Content-Type auf 'application/json' res.writeHead(200, { 'Content-Type': 'application/json' }); // Die Personen-Objekte in einen JSON-String umwandeln und senden res.end(JSON.stringify(personen)); }); // Server auf Port 3000 starten const PORT = 3000; server.listen(PORT, () => { console.log(`Server läuft unter http://localhost:${PORT}`); });
<!DOCTYPE html> <html lang="de"> <head> <meta charset="UTF-8"> <title>Personen Übersicht</title> <style> table { width: 50%; border-collapse: collapse; margin-top: 20px; } th, td { border: 1px solid #999; padding: 8px; text-align: left; } th { background-color: #f2f2f2; } </style> </head> <body> <h1>Personenliste</h1> <table> <thead> <tr> <th>ID</th> </tr> </thead> <!-- Hier landen die Daten dynamisch --> <tbody id="tabellen-body"></tbody> </table> <script> // Daten vom Server abrufen fetch('/api/personen') .then(response => response.json()) // Antwort in JSON umwandeln .then(daten => { const tbody = document.getElementById('tabellen-body'); // Schleife durch alle Personen daten.forEach(person => { // Eine neue Tabellenzeile erstellen const zeile = document.createElement('tr'); // Zellen mit den Daten füllen zeile.innerHTML = ` <td>${person.id}</td> `; // Zeile an die Tabelle anhängen tbody.appendChild(zeile); }); }) .catch(error => console.error('Fehler beim Laden der Daten:', error)); </script> </body> </html>
—-