So stellen Sie die richtige Anfrage an server.app mit gegebenem access_token in client.app zum Beispiel bekommen E-Mail(s) des/der Benutzer(s).
Sollte ich es benutzen: http://server.app/api/user Daten anfordern? Wenn ja, wie kann ich das tun? Wenn möglich, schreiben Sie bitte einen Code.
Danke für alle Antworten.
Adamja
Ich bin bei diesem Thema absolut verrückt geworden! Es machte einfach keinen verdammten Sinn, warum es immer wieder die Dummen ausspuckte Unauthenticated Fehler beim Versuch, eine Route wie z /api/user. Nach langem Suchen (VIEL Suchen) fand ich endlich die Antwort. Wenn du diesen Fero von Laracasts siehst, bist du mein Held!
Hast du überprüft appProvidersRouteServiceProvider.php ?
in dem mapApiRoutes() du kannst das einstellen Middleware. überprüfe, ob es auth:api. wenn nicht, ändern Sie es. auch, entfernen Sie die auth Middleware von der Strecke api.php Datei.
Um ein frisches abzurufen access_token, ich habe eine neue Route erstellt auf routes/web.php und nannte es /connect. Ich habe dann den Code aus dem obigen Link eingefügt:
Klicken Sie auf Überschriften Tab erneut und fügen Sie einen neuen Schlüssel von . hinzu Authorization und Wert von Bearer access_token_here (ersetzen access_token_here mit dem zuvor kopierten Zugriffstoken)
In meinem Fall habe ich jedem Benutzer ein persönliches Zugriffstoken gegeben … haben Sie Ihre Lösung getestet und funktioniert sie?
– Tauras
6. Apr. ’17 um 8:08
Habe es gründlich getestet und es funktioniert zu 100%. Konnte nicht glauben, dass ein einfacher Tausch auf der Middleware von api zu auth:api auf der RouteServiceProvider.php war alles, was benötigt wurde. Möchten Sie, dass ich auch mit Chrome Postman eine vollständig detaillierte Schritt-für-Schritt-Anleitung hinzufüge, damit Sie alles sehen können?
– adamja
6. Apr. ’17 um 8:11
Los geht’s, Kumpel! Ich denke, das sollte in Zukunft einigen Leuten helfen.
– adamja
6. Apr. ’17 um 9:09
Perfekt. Danke. Hoffe, jeder andere wird dies nützlich finden. Akzeptiert.
– Tauras
6. Apr. ’17 um 9:35
Tage vergingen! Du bist ein Rettermann! Jetzt habe ich einen klaren Überblick, wie es gemacht wird!
Nachdem Sie die Daten erfolgreich generiert haben, klicken Sie oben rechts auf die Schaltfläche CODE (ich habe sie grün hervorgehoben).
Wählen Sie zuletzt Ihre Sprache aus und kopieren Sie den Code. Für PHP habe ich php cURL ausgewählt.
Hoffe, es funktioniert.
shukshin.ivan
Laut Laravel Dokumentation, sollten Sie eine Route zur Server-App hinzufügen (routes/api.php): $response->getBody();
Route::get('/user', function () {
// authenticated user. Use User::find() to get the user from db by id
return app()->request()->user();
})->middleware('auth:api');
Client error: `GET http://server.app/api/user` resulted in a `401 Unauthorized` response: {"error":"Unauthenticated."} . Ich verwende das richtige Zugriffstoken.
– Tauras
20. Januar ’17 um 12:19
Außerdem habe ich verwendet $response = $client->get('http://server.app/api/user' ... und $client wie new GuzzleHttpClient;
– Tauras
20. Januar ’17 um 12:21
Jetzt gibt es: Server error: `GET http://server.app/api/user` resulted in a `500 Internal Server Error` response: <!DOCTYPE html>. Ich weiß, wegen return json_decode((string) $response->getBody(), true)['access_token'];
– Tauras
20. Januar ’17 um 12:52
richtig access_token gibt 500 Fehler zurück, nicht korrekt, gibt zurück Unauthenticated.
– Tauras
20. Januar 17 um 13:00
Ich hatte das gleiche Problem und habe alle genannten Lösungen ausprobiert, aber es bleibt gleich. Habe so viele Tutorials und Websites gelesen, aber keine Lösung gefunden. Endlich, hab die lösung: Ich verwende Laravel 8 und es hat zwei Pakete für die API-Anfrage deklariert, eines als Reisepass und das andere als Heiligtum. Standardmäßig in User Modell, das es verwendet use LaravelSanctumHasApiTokens; für API-Token. Wenn du benutzt Sanctum Paket ist ok. Wenn Sie es nicht verwenden (Wenn Sie einen Reisepass verwenden), ändern Sie die Linie von Sanctum zu Passport as use LaravelPassportHasApiTokens;
.
2914300cookie-checkHolen Sie sich Benutzerdaten mit dem Zugriffstoken in der Laravel-Passport-Client-Appyes