Услышав много о паспорте laravel, я подумал о том, чтобы внедрить его в свой новый проект, где мне нужно создать API, который будет использоваться в мобильном приложении.
Так что мое мобильное приложение - это client, который в дальнейшем будет иметь своих пользователей.
Я выполнил шаги, упомянутые Тейлором, а также прочитал об этом здесь. В двух словах, я следовал этим шагам:
- Установлен
laravel/passport. - Создан пользователь сайта.
- Сгенерированные ключи паспорта
php artisan passport:install - Сгенерированные
client_idиclient_secretс использованиемphp artisan passport:client - Добавлены маршруты
redirectionиcallbackвweb.php - Авторизовал пользователя и получил окончательный токен доступа.
Затем я попытался вызвать api/user (с Authorization заголовка, содержащей значение Bearer eyJ0eXAiOiJKV1...(token)
Я получил данные. Довольно просто и аккуратно.
Но у пользователей моего приложения не будет этих деталей. Поэтому я подумал о настройке токенов паролей, которые идеально соответствуют моим требованиям.
Теперь начинается настоящая головная боль. Я пытался настроить это в течение последних 3 дней и постоянно получаю
{"error":"invalid_client","message":"Client authentication failed"}
Я испробовал практически все инструкции, которые следовал в Интернете: проблемы с перенаправлением, добавление решения Atleast One Scope, проблема P100Y и т.д.
Но я все еще получаю invalid client ошибку invalid client. Вот что я передаю через POSTMAN в oauth/token:
{
"grant_type": "password,"
"client_id": "3,"
"client_secret": "8BUPCSyYEdsgtZFnD6bFG6eg7MKuuKJHLsdW0k6g,"
"username": "[email protected],"
"password": "123456,"
"scope": ""
}
Любая помощь будет оценена.