Я пытаюсь использовать код авторизации для авторизации сторонних клиентов на паспортном Oauth-сервере. когда я использую пароль, предоставьте его работу должным образом, и паспорт даст мне маркер, и все в порядке. в стороннем приложении я добавляю этот код:
Route::get('/redirect', function (Request $request) {
$query = http_build_query([
'client_id' => 3,
'redirect_uri' => 'http://127.0.0.1:8001/callback',
'response_type' => 'code',
'scope' => '',
'state' => \Str::random(40),
]);
return redirect('http://127.0.0.1:8000/oauth/authorize?' . $query);
});
Route::get('/callback', function (Request $request) {
$response = (new GuzzleHttp\Client)->post('http://127.0.0.1:8000/oauth/token', [
'form_params' => [
'grant_type' => 'authorization_code',
'client_id' => 3,
'client_secret' => 'Ux6p201tRFrPQ5lLZI1RMce1GYD6qTJ9Qvj7nM2Z',
'redirect_uri' => 'http://127.0.0.1:8001/callback',
'code' => $request->code,
]
]);
session()->put('token', json_decode((string)$response->getBody(), true));
return redirect('/todos');
});
Route::get('/todos', function () {
$response = (new GuzzleHttp\Client)->get('http://127.0.0.1:8000/api/todos', [
'headers' => [
'Authorization' => 'Bearer ' . session()->get('token.access_token')
]
]);
return json_decode((string)$response->getBody(), true);
});
на другом сервере я создаю клиента с идентификатором: 3 секрет: Ux6p201tRFrPQ5lLZI1RMce1GYD6qTJ9Qvj7nM2Z обратный вызов: 'http://127.0.0.1: 8001 / callback ' 1007 *
, но когда я создаю запрос на / перенаправление из стороннего приложения, я получаю: 401 без проверки подлинности и перенаправление для входа в систему, также я пытаюсь добавить
Passport::$ignoreCsrfToken = true;
в AuthServiceProvider. но пока не работает. Кто-нибудь может мне помочь, пожалуйста?