【发布时间】:2018-06-06 14:59:06
【问题描述】:
我正在使用 yii2-authclient 库在我的 Yii2 应用程序中实现 OpenId Connect。我可以毫无问题地登录并用代码交换令牌。我已经按照网络上的大多数代码示例设置了一个successCallback 函数,一旦用户成功登录就会调用该函数。它看起来像这样:
public function successCallback(ClientInterface $client)
{
$attributes = $client->getUserAttributes();
}
此代码被调用,但调用 getUserAttributes() 会导致以下错误:
异常 – yii\authclient\InvalidResponseException
请求失败,代码:400,消息:
{"error":"invalid_request","error_description":"令牌未提供"}
id 服务器上的日志显示一个空白的客户端和用户,错误为invalid_token。
我仔细查看了我提出的请求,我看到了一个 access_token 元素。任何想法可能是什么问题?如有需要,我可以提供更多信息。
【问题讨论】:
-
更多信息:这是我点击的 URL:
https://id.dev.[url removed].com/auth/realms/terradatum/protocol/openid-connect/userinfo?access_token=eyJhb[rest of token removed]并收到以下回复:{"error":"invalid_request","error_description":"Token not provided"}
标签: php yii2 openid-connect yii2-authclient