gpt4 book ai didi

php - Laravel Passport 通过访问 token 获取客户端 ID

转载 作者:可可西里 更新时间:2023-10-31 22:08:45 24 4
gpt4 key购买 nike

我正在编写一个小型短信网关,供几个项目使用,

我实现了 laravel 护照认证(client credentials grant token)

然后我将 CheckClientCredentials 添加到 api 中间件组:

protected $middlewareGroups = [
'web' => [
...
],

'api' => [
'throttle:60,1',
'bindings',
\Laravel\Passport\Http\Middleware\CheckClientCredentials::class
],
];

逻辑工作正常,现在在我的 Controller 中我需要让客户端与有效 token 相关联。

routes.php

Route::post('/sms', function(Request $request) {
// save the sms along with the client id and send it

$client_id = ''; // get the client id somehow

sendSms($request->text, $request->to, $client_id);
});

出于明显的安全原因,我永远无法将客户端 ID 与消费者请求一起发送,例如$client_id = $request->client_id;

最佳答案

我用它来访问经过身份验证的客户端应用程序...

$bearerToken = $request->bearerToken();
$tokenId = (new \Lcobucci\JWT\Parser())->parse($bearerToken)->getHeader('jti');
$client = \Laravel\Passport\Token::find($tokenId)->client;

$client_id = $client->id;
$client_secret = $client->secret;

Source

关于php - Laravel Passport 通过访问 token 获取客户端 ID,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44145080/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com