2017-06-05 1 views
1

Nur als Vorwort, ich bin gerade dabei, Laravel, Javascript und OAuth zu lernen.Laravel-Pass für api-und Web-Routen verwenden

Ich wollte, dass ein Benutzer sich anmelden, einen Autorisierungsschlüssel erhalten, den Schlüssel (zusammen mit dem Ablaufdatum) im Sitzungsbereich speichern und dann diesen Schlüssel als "Wächter" für Routen verwenden kann (die Rücksichten).

Nachdem Sie die Anweisungen hier (es verwendet Laravel Pass und OAuth):

https://www.youtube.com/watch?v=D7gUz3RcTm8&t=18s https://mattstauffer.co/blog/introducing-laravel-passport

https://scotch.io/@neo/getting-started-with-laravel-passport

ich ziemlich viel mit einem Javascript-Client liquidiert das würde zuerst Anfrage Authentifizierung. Nachdem ich es bekommen hatte, verstand ich, dass der Server Informationen (genehmigter KEY und Ablaufdatum) zurückgab, die tatsächlich in einer Sitzung gespeichert werden konnten. Leider habe ich nicht gesehen, wie man damit Routen schützen kann.

Fehle ich etwas? Benutze ich das falsche Werkzeug für das, was ich erreichen möchte?

Wenn man tut, "php Handwerker Route: Liste", im Anschluss an die unten zurückgegeben:

| Domain | Method | URI          | Name | Action                  | Middleware | 
+--------+----------+-----------------------------------------+------+----------------------------------------------------------------------------+--------------+ 
|  | GET|HEAD |/          |  | Closure                 | web   | 
|  | GET|HEAD | api/user        |  | Closure                 | api,auth:ap 

|  | DELETE | oauth/personal-access-tokens/{token_id} |  | \Laravel\Passport\Http\Controllers\[email protected] | web,auth  | 
|  | GET|HEAD | oauth/scopes       |  | \Laravel\Passport\Http\Controllers\[email protected]      | web,auth  | 
|  | POST  | oauth/token        |  | \Laravel\Passport\Http\Controllers\[email protected]  | throttle  | 
|  | POST  | oauth/token/refresh      |  | \Laravel\Passport\Http\Controllers\[email protected]  | web,auth 

| 

Was ist der Unterschied zwischen "api" Routen und "web" Routen? Was ist Gas? Stellen API-Routen nur JSON zurück?

TIA

Antwort

0

Was ist der Unterschied zwischen "api" Routen und "web" Routen?

Die web und api Middleware sind Gruppe Mitte, Sie ihre Definition in http\kernel finden. Die web aktiviert einige Aspekte der Web-Anwendung wie Cookie, oder csft token. Während die api nur für throttle und verbindlich model für controller überprüfen.

Was ist Gas?

Die throttle Middleware Verwendung für begrenzen, wie oft für den Aufruf einer Route.

API-Routen geben nur JSON zurück?

Es liegt an Ihnen. Sie können zurückgeben, was Sie wollen.