Я новичок в мире API.
Имея в виду и основываясь на интернет-исследованиях, я предполагаю, что именно так работает базовая аутентификация API (пожалуйста, поправьте меня, если я ошибаюсь)
Клиент (например, мобильное приложение), отправьте запрос на сервер, указав имя пользователя / адрес электронной почты и пароль, введенные из мобильного приложения.
Сервер проверит эти учетные данные и, если они верны, создаст токен доступа и отправит обратно в ответ
Для всех других последующих запросов клиент отправит этот токен в запросе, чтобы сервер мог аутентифицировать запрос.
В принципе, я хочу добиться в Laravel того, что описано выше, поэтому я обнаружил, что есть пакет под названием Laravel Passport, который может быть полезным:
https://laravel.com/docs/master/passport
Чего я не понимаю, так это параметров запроса на получение токена доступа:
https://laravel.com/docs/master/passport#password-grant-tokens
$http = new GuzzleHttp\Client;
$response = $http->post('http://your-app.com/oauth/token', [
'form_params' => [
'grant_type' => 'password',
'client_id' => 'client-id',
'client_secret' => 'client-secret',
'username' => '[email protected]',
'password' => 'my-password',
'scope' => '',
],
]);
return json_decode((string) $response->getBody(), true);
Я думал, чтобы просто получить токен доступа, достаточно параметров электронной почты / имени пользователя и пароля. Поэтому меня смущают дополнительные параметры в приведенном выше запросе.
Я прочитал весь документ, но не понял, как я могу использовать его для достижения того, чего хочу.
Итак, вопрос в том, могу ли я использовать этот пакет для нужд? Если да, то как? Если нет, то предложите мне другие пакеты.
Спасибо