J'ai installé Laravel Passport conformément à la documentation et j'ai modifié toutes les zones de mon code requises.
Je travaille actuellement sur la configuration des jetons d'octroi de mots de passe afin que les utilisateurs puissent obtenir un jeton d'API lorsqu'ils se connectent avec leur nom d'utilisateur et leur mot de passe pour le site. Je rencontre un problème avec Grant_type . Pour une raison quelconque, Laravel se plaint d'un type d'octroi invalide.
{
"error": "unsupported_grant_type",
"message": "The authorization grant type is not supported by the authorization server.",
"hint": "Check the `grant_type` parameter"
}
Ce sont les champs que je poste sur /oauth/token
client_id = 4
client_secret = SMiYE7XqDNtXKQnmkYmFnXxfAaV83vRhnJ9zwCtZ
username = [email protected]
password = **************
grant_type = password
scope = *
J'ai exécuté php artisan passport:install
et j'ai également essayé d'exécuter php artisan passport:client --password
Les deux commandes ont fonctionné et les deux ont créé le client et les secrets, cependant, je ne peux pas sembler avoir dépassé l'erreur concernant le grant_type.
Des suggestions sur ce que je devrais examiner pour résoudre le problème afin que les jetons d'octroi de mot de passe fonctionnent pour moi?
Il semble que vous deviez envoyer les paramètres en tant que données de formulaire et non dans les en-têtes comme je le faisais ... Erreur de recrue!
J'utilise Postman et j'ai mis tous les paramètres dans Params. Facteur montre la réponse suivante
{
"error": "unsupported_grant_type",
"message": "The authorization grant type is not supported by the authorization server.",
"hint": "Check the `grant_type` parameter"
}
Maintenant, je mets tous les paramètres dans Body puis appuie sur le bouton Send, ça fonctionne bien.
URL initiale
https://restfulapi.test/oauth/authorize?client_id=3&redirect_url=http://restfulapi.test?response_type=code
Solution
https://restfulapi.test/oauth/authorize?client_id=3&redirect_url=http://restfulapi.test&response_type=code
Je devais remplacer le point d'interrogation avant response_type par le &