在使用Laravel Passport过程中,请求oauth/token时遇到如下错误:
{
"error": "invalid_client",
"error_description": "Client authentication failed",
"message": "Client authentication failed"
}
产生这个错误的原因是你的参数配置错误,请仔细检查参数配置与数据库中的设置。
官方文档的示例代码:
$http = new GuzzleHttpClient;
$response = $http->post('http://your-app.com/oauth/token', [
'form_params' => [
'grant_type' => 'password',
'client_id' => 'client-id',
'client_secret' => 'client-secret',
'username' => 'taylor@laravel.com',
'password' => 'my-password',
'scope' => '',
],
]);
return json_decode((string) $response->getBody(), true);
请逐个检查上述form_params中的参数名及参数值,仔细对比,这里很容易出错,比如‘grant_type’没配置,那么还会报:Laravel Passport unsupported_grant_type的错误,如果都对,那么请往下看。
如果你的项目不需要password认证,也就是你的form_params中没有
‘password’ => ‘my-password’,
这一项,那么你的‘grant_type’应该设置为:client_credentials。
想要了解更多内容,请持续关注码农资源网,一起探索发现编程世界的无限可能!
本站部分资源来源于网络,仅限用于学习和研究目的,请勿用于其他用途。
如有侵权请发送邮件至1943759704@qq.com删除
码农资源网 » Laravel Passport invalid_client错误的解决办法
本站部分资源来源于网络,仅限用于学习和研究目的,请勿用于其他用途。
如有侵权请发送邮件至1943759704@qq.com删除
码农资源网 » Laravel Passport invalid_client错误的解决办法