如何用旧的laravel passport替换新的api访问令牌
我需要生成一个访问令牌,而控制器上的方法将被特定路由调用。我的问题是如何为登录用户生成一个新的访问令牌,并将其替换为旧的(在oauth_access_tokens表e.a.更新用户状态或令牌中)如何用旧的laravel passport替换新的api访问令牌,laravel,api,token,laravel-passport,Laravel,Api,Token,Laravel Passport,我需要生成一个访问令牌,而控制器上的方法将被特定路由调用。我的问题是如何为登录用户生成一个新的访问令牌,并将其替换为旧的(在oauth_access_tokens表e.a.更新用户状态或令牌中)我需要删除旧的访问令牌并用新的替换它。在我的情况下,passport有一个生命周期,每次用户做某事或完成或完成某个动作(例如呼叫路由等),我都需要生成一个新的访问令牌,并将其替换为现有的访问令牌。在中,非常清楚地提到,您需要使用您的访问令牌,要生成刷新令牌,您可以使用该令牌替换现有的访问令牌 $http
我需要删除旧的访问令牌并用新的替换它。在我的情况下,passport有一个生命周期,每次用户做某事或完成或完成某个动作(例如呼叫路由等),我都需要生成一个新的访问令牌,并将其替换为现有的访问令牌。在中,非常清楚地提到,您需要使用您的访问令牌,要生成刷新令牌,您可以使用该令牌替换现有的访问令牌
$http = new GuzzleHttp\Client;
$response = $http->post('http://your-app.com/oauth/token', [
'form_params' => [
'grant_type' => 'refresh_token',
'refresh_token' => 'the-refresh-token',
'client_id' => 'client-id',
'client_secret' => 'client-secret',
'scope' => '',
],
]);
return json_decode((string) $response->getBody(), true);
现在,您可以采用多种选择:
- 使用刷新令牌和新访问令牌时撤销 已经发出
- 由与令牌关联的用户手动撤销
- 在预定的时间后撤销
oauth\u访问\u令牌
和oauth\u刷新\u令牌
,这些表将帮助您了解需要在此处手动更新的内容。在中,非常清楚地提到,您需要使用您的访问令牌来生成刷新令牌,并且可以用它替换现有的访问令牌
$http = new GuzzleHttp\Client;
$response = $http->post('http://your-app.com/oauth/token', [
'form_params' => [
'grant_type' => 'refresh_token',
'refresh_token' => 'the-refresh-token',
'client_id' => 'client-id',
'client_secret' => 'client-secret',
'scope' => '',
],
]);
return json_decode((string) $response->getBody(), true);
现在,您可以采用多种选择:
- 使用刷新令牌和新访问令牌时撤销 已经发出
- 由与令牌关联的用户手动撤销
- 在预定的时间后撤销
查看
oauth\u access\u令牌
和oauth\u refresh\u令牌
,这将帮助您了解需要在此处手动更新的内容。我想您需要@PrafullaKumarSahu谢谢,我尝试过,但给定的刷新令牌无法验证用户身份,而且,旧访问令牌的记录仍然存在。您需要用新的替换现有的。谢谢,但是我可以替换新的吗?是的,下次您可以使用此生成另一个刷新令牌并再次替换。我想您需要@PrafullaKumarSahu谢谢,我试过了,但给定的刷新令牌无法验证用户身份,而且,旧访问令牌的记录仍然存在。您需要用新记录替换现有记录。谢谢,但我可以替换新记录吗?是的,下次您可以使用此记录生成另一个刷新令牌并再次替换。