Zum Hauptinhalt springen

Einheitliche API-Antworten

Erfolgsformat

{"data": {"id": 1, "title": "Hi"}}

Fehlerformat

{"error": {"code": "validation_error", "message": "title fehlt"}}

Helfer

def ok(data, status=200):
return jsonify({"data": data}), status

def err(message, status=400, code="error"):
return jsonify({"error": {"code": code, "message": message}}), status

Rate mal!

Warum einheitlich?

Auflösung

Clients (und du) können Fehler immer gleich auslesen.

Probiere es selbst

Experiment 1

ok()-Helfer.

Experiment 2

err() bei Validierung.

Experiment 3

Dokumentiere 3 Fehlercodes.

Übungen

Level 1

data vs error.

Level 2

Helfer schreiben.

Level 3

Alle Routes auf Format umstellen (Skizze).

Mini-Quiz

Mini-QuizWas sollte eine Fehlerantwort klar enthalten?

Format sitzt! Als Nächstes: Flask-Testclient.