Was ist eine Response
Controller und Routen müssen dem Browser eine Antwort liefern. Laravel bietet einfache Wege, um Strings, Arrays, Views, Redirects, JSON und weitere Antwortformen zurückzugeben.Einfache Antworten
String zurückgeben
Die einfachste Antwort ist ein String. Laravel wandelt ihn automatisch in eine HTTP-Antwort um.Array zurückgeben
Ein zurückgegebenes Array wird von Laravel automatisch in JSON umgewandelt.Auch Eloquent-Modelle oder -Collections werden direkt in JSON konvertiert. Ein häufig genutztes Muster für einfache APIs.
Eloquent-Modell zurückgeben
Das Response-Objekt
Mit dem Helperresponse() geben Sie detailliert HTTP-Status und Header vor.
Häufig verwendete HTTP-Statuscodes
View-Antwort
Um aus einem Controller eine Blade-View auszuliefern, verwenden Sieview().
Das ist die häufigste Antwort in Webanwendungen.
Feineinstellung mit response()->view()
Möchten Sie auch Status und Header setzen, verwenden Sie response()->view().
Redirects
Einfacher Redirect
redirect() liefert eine Redirect-Response.
Häufig verwendet nach Formularübermittlungen.
Redirect zu einer benannten Route
Mitroute() verweisen Sie über den Routennamen statt einer festen URL.
Best Practice, da sich URLs so ändern können, ohne dass Code angepasst werden muss.
Zurück zur vorherigen Seite
Mitback() gelangt der Nutzer zur vorherigen Seite zurück.
Typisch nach fehlgeschlagener Validierung.
Redirect mit Flash-Nachricht
Mitwith() legen Sie eine Nachricht in die Session ab.
Praktisch für Erfolgsmeldungen nach einer Formularsubmission.
JSON-Antworten
Für APIs verwenden Sieresponse()->json().
Der Header Content-Type: application/json wird automatisch gesetzt.
Auch das einfache Rückgeben eines Arrays oder Eloquent-Modells liefert JSON.
response()->json() gibt Ihnen jedoch feine Kontrolle über Status und Header.Response-Header
Header ergänzen Sie mitheader().
withHeaders().
Praxisbeispiel: Kombinationen im Controller
Ein Beispiel, das die typischen Response-Varianten in einem Controller kombiniert.1
Routen definieren
2
Controller implementieren
Nächste Schritte
Validierung
Erfahren Sie, wie Sie Eingaben validieren, bevor Sie eine Response ausliefern.