2016-01-20 29 views
28

Ich schaute durch die eingebauten Auth-Controller und ich bemerkte, dass sie etwas namens "Guards" verwenden. Bis jetzt, bis wann immer ich meine eigene Logins gemacht/registrieren Formulare wir nie berühren diese und würde in der Regel nur Dinge tun, wie:Laravel Was ist ein Wächter?

Auth::attempt() 

ohne jede Art von Wache. Ich habe versucht herauszufinden, was genau es ist, aber ich konnte wirklich keine Informationen darüber finden. Könnte mir jemand erklären, was der Zweck der Wachen ist?

Antwort

34

Sie definieren, wie das System Informationen über Ihre Benutzer speichern und abrufen soll.

Sie finden die Konfiguration in Ihrer Datei config/auth.php. Ein Web-Wächter ist der traditionelle Cookie-Speicher - so dass der Web-Wächter Laravel anweist, Sitzungsinformationen auf die klassische Weise zu speichern und abzurufen. Der API-Wächter hingegen verwendet Token. Sie würden also den API-Wächter verwenden, wenn Sie Benutzer und Anforderungen mit einem API-Token im Header (Bearer) oder Abfrageparameter authentifizieren möchten.

Sie können auch create your own guard, wenn Sie es wünschen, und es gibt auch diese gute Einführung blog post zum Thema von Matt Stauffer.

+1

Ein Schutz kann auch über alles schützen. Wie verhindern Sie einen kleinen Kauf Ticker von Event: '' $ $ this-> preventMinorsGuard(); '' '. Kann so verwendet werden? – brnmonteiro