Worum es geht: Eine eigene Schnittstelle zu schreiben ist unspektakulär – fünf Zeilen genügen für die erste. Was eine brauchbare von einer gefährlichen unterscheidet, sind die Teile drumherum: Prüfung, Fehlerbehandlung und die Frage, wer überhaupt etwas darf.
1. Die fünf Teile
// app/api/anfragen/route.ts
export async function GET() { … }
export async function POST(req) { … }Die Zuordnung von Verb und Pfad zu einer Funktion. In Next.js ergibt sich der Pfad aus der Ordnerstruktur, in Express oder FastAPI wird er ausdrücklich angemeldet.
2. Warum die Prüfung nicht optional ist
Die Prüfung im Browser lässt sich umgehen – jeder kann die Anfrage von Hand abschicken, mit beliebigen Inhalten. Deshalb gilt ohne Ausnahme: Jede Prüfung, auf die es ankommt, passiert im Backend. Die Prüfung im Frontend dient der Bequemlichkeit, nie der Sicherheit.
Bewährt hat sich ein Schema, das die erwarteten Daten beschreibt und die Prüfung daraus ableitet – in TypeScript etwa mit Zod, in Python mit Pydantic. Das spart Handarbeit und liefert zugleich verständliche Fehlermeldungen, die genau sagen, welches Feld nicht passt.
3. Was eine API im Betrieb braucht
| Punkt | Warum |
|---|---|
| Eingabeprüfung | Ohne sie landet alles in der Datenbank, auch Unsinn und Angriffe |
| Fehlerbehandlung | Ein unerwarteter Fehler darf nicht den ganzen Dienst mitnehmen |
| Begrenzung der Anfragen | Verhindert, dass ein einzelner Aufrufer den Dienst lahmlegt |
| Protokoll | Ohne Einträge lässt sich hinterher nicht klären, was passiert ist |
| Rechteprüfung | Angemeldet zu sein heißt nicht, alles sehen zu dürfen |
Die letzte Zeile ist die am häufigsten übersehene Sicherheitslücke überhaupt: Eine Schnittstelle prüft, ob jemand angemeldet ist, aber nicht, ob der angemeldete Nutzer diesen Datensatz sehen darf. Wer dann die Kennung in der Adresse hochzählt, sieht fremde Daten.
4. Wo die API liegt
Drei Wege sind üblich. In einem Next.js-Projekt liegen die Routen im selben Projekt wie die Oberfläche – am einfachsten, solange beides zusammengehört. Ein eigener Dienst mit Express oder FastAPI ist sinnvoll, wenn mehrere Anwendungen darauf zugreifen oder eine andere Sprache besser passt. Und eine fertige Plattform wie Supabase liefert Datenbank und Schnittstelle zusammen – schnell am Anfang, mit weniger Kontrolle später.
5. Häufige Fragen
Was ist CORS? Eine Schutzregel des Browsers: Eine Seite darf nicht ohne Weiteres Anfragen an eine andere Domain schicken. Wenn eine Anfrage im Browser scheitert, auf der Kommandozeile aber funktioniert, ist das fast immer die Ursache.
Wie testet man eine API? Mit gespeicherten Anfragen für den Alltag und mit automatischen Tests für die wichtigsten Fälle: erfolgreich, fehlende Pflichtfelder, nicht angemeldet, nicht berechtigt. Diese vier decken den größten Teil ab.
Braucht jede Anwendung eine Versionierung? Sobald andere Ihre Schnittstelle nutzen, ja – sonst bricht jede Änderung deren Anwendungen. Intern genügt eine Absprache.
Stand: September 2026. Die Übungen laufen vollständig in Ihrem Browser – es wird nichts gespeichert oder übertragen.