Zum Inhalt

M295 Backend Entwicklung - Grundlagen Dokumentation

Diese Dokumentation fasst die ersten Schritte in der Node.js Backend-Entwicklung zusammen. Wir haben uns das Dateisystem (fs) sowie die Erstellung eines einfachen Webservers (http) angesehen.

1. Dateisystem (FS Module)

Node.js bietet das fs (File System) Modul, um Dateien zu lesen und zu schreiben. Es gibt zwei Hauptwege, dies zu tun: Synchron und Asynchron.

Synchron vs. Asynchron

Wichtiger Unterschied

Synchron (readFileSync): Blockiert den Code. Der nächste Befehl wird erst ausgeführt, wenn die Datei fertig gelesen ist.
Asynchron (readFile): Blockiert nicht. Der Code läuft weiter, und das Ergebnis wird später über eine "Callback-Funktion" bereitgestellt.

const fs = require('fs');

// === SYNCHRON ===
// Programm wartet hier, bis die Datei geladen ist
const syncData = fs.readFileSync('./txt/demo.txt', 'utf-8');
console.log('Synchron gelesen:', syncData);

// === ASYNCHRON ===
// Programm läuft sofort weiter (Non-Blocking)
fs.readFile('./txt/demo.txt', 'utf-8', (err, asyncData) => {
    if (err) return console.log('Fehler:', err);
    console.log('Asynchron (Callback):', asyncData);
});
console.log('Dieser Code läuft, während die Datei noch geladen wird!');

2. HTTP Server erstellen

Um einen Webserver zu starten, verwenden wir das native http Modul von Node.js.

Server Setup

Wir können einen Server erstellen, der auf Anfragen (Requests) reagiert und Antworten (Responses) zurücksendet.

Localhost

Die IP-Adresse 127.0.0.1 steht für den "Localhost", also den eigenen Computer.

const http = require('http');

// Server erstellen
const server = http.createServer((req, res) => {
    // req = Request (Anfrage vom Browser)
    // res = Response (Antwort vom Server)

    // Antwort an den Client senden
    res.end('World from the server');
});

// Server starten und auf Port 8002 lauschen
server.listen(8002, '127.0.0.1', () => {
    console.log('Server läuft! Lausche auf Port 8002...');
});

Server ausführen

Um den Server zu starten, nutzen wir den Node.js Befehl im Terminal:

node index.js

Der Server ist dann im Browser unter http://127.0.0.1:8002 erreichbar.