MB Dev .tech
Registrieren Login

Web Grundlagen · Client vs Server

← Zurück zu Web Grundlagen

Beim Programmieren fürs Web ist eine Sache extrem wichtig: Was passiert im Browser (Client) und was passiert auf dem Server? Wenn du das sauber trennst, vermeidest du viele typische Anfängerfehler.

Merke
Der Client ist nicht vertrauenswürdig

Alles, was im Browser läuft (HTML/CSS/JS), kann der Nutzer verändern – absichtlich oder versehentlich. Der Server muss wichtige Regeln immer selbst prüfen.

1) Was ist „Client“ und was ist „Server“?

Vereinfacht gesagt:

  • Client = dein Browser (z.B. Chrome/Firefox) – zeigt die Seite an
  • Server = der Computer im Internet – liefert Daten und erzeugt Antworten
Tipp
Merksatz

Client = „Ich sehe und klicke“.
Server = „Ich entscheide und speichere“.

2) Wer macht was? (praktische Beispiele)

Hier sind typische Aufgaben – und wo sie hingehören:

2.1 Client (Browser)

  • Seite anzeigen (HTML)
  • Design / Layout (CSS)
  • Klicks, kleine Effekte, UI-Logik (JavaScript)
  • Optionale „freundliche“ Prüfung (z.B. „Feld ist leer“)
Merke
Client-Validierung ist Komfort, nicht Sicherheit

JavaScript kann dem Nutzer helfen (z.B. sofortige Hinweise), aber es ersetzt niemals eine Prüfung auf dem Server.

2.2 Server

  • Wichtige Regeln prüfen (z.B. „Preis darf nicht negativ sein“)
  • Daten speichern / laden (z.B. Datenbank)
  • Login / Berechtigungen prüfen
  • Antworten erzeugen (z.B. HTML oder JSON)
Achtung
Wichtige Entscheidungen gehören immer auf den Server

Wenn eine Regel „wichtig“ ist (Geld, Rechte, Daten), dann muss sie serverseitig geprüft werden. Sonst kann man sie sehr leicht umgehen.

3) Mini-Szenario: Formular absenden

Stell dir vor, du hast ein Formular „Kontakt“ oder „Registrierung“. Der Ablauf sieht grob so aus:

Ablauf in Worten
1) Client zeigt Formular an
2) Nutzer tippt Daten ein
3) Client sendet Request an Server (z.B. POST)
4) Server prüft Daten (Validierung)
5) Server speichert Daten oder gibt Fehler zurück
6) Client zeigt Ergebnis an
Tipp
So findest du Fehler schneller

Wenn etwas „nicht klappt“, frag dich: Passiert der Fehler im Browser (Client) oder auf dem Server? Das grenzt die Suche sofort ein.

4) Typische Anfängerfehler (und warum)

4.1 „Ich prüfe alles nur in JavaScript“

Das ist bequem, aber unsicher. Nutzer können JavaScript ausschalten oder Werte direkt im Request ändern.

Achtung
Requests kann man fälschen

Ein Browser ist nur eine bequeme Oberfläche. Technisch kann jeder HTTP-Requests senden – mit beliebigen Werten.

4.2 „JavaScript kann direkt auf die Datenbank“

Im klassischen Web-Setup: nein. Die Datenbank ist geschützt auf dem Server. Der Server ist die „Kontrollstelle“, die entscheidet, was erlaubt ist.

Merke
JavaScript spricht mit dem Server – nicht direkt mit der DB

JavaScript sendet Requests (z.B. an eine API). Der Server greift dann (wenn erlaubt) auf die Datenbank zu.

Kleine Aufgaben (Client vs Server)

Kurz nachdenken – dann Lösung einblenden.

Aufgabe 1 anzeigen

Du hast ein Formular-Feld „Preis“. Der Preis darf nicht negativ sein. Wo muss diese Regel unbedingt geprüft werden?

Lösung einblenden
Lösung
Auf dem Server

Der Client kann Hinweise geben (Komfort), aber die echte Regel muss auf dem Server geprüft werden, weil der Client manipulierbar ist.