【发布时间】:2015-07-09 15:50:22
【问题描述】:
我正在使用 DHC Web 客户端在 FIWARE-Lab 的 KeyRock GE 实例上测试授权代码授予协议。
到目前为止,我已经成功实现了授权请求,并且我获得了用于访问令牌请求的代码。授权请求的 URL 如下(虽然不是在 DHC 上执行,而是在普通浏览器上执行,所以我可以介绍我的用户和密码):
https://account.lab.fiware.org/oauth2/authorize/?response_type=code&client_id=2122&redirect_uri=http%3A%2F%2Flocalhost%2FCallback
我已检查 client_id 和 redirect_uri 与我在 FIWARE-Lab 帐户中的应用程序相关的值是否正确。
执行以下请求(无法发布图片,我会描述)
POST
https:// account.lab.fiware.org/oauth2/token?grant_type=authorization_code&code=<code>&redirect_uri=http%3A%2F%2Flocalhost%2FCallback -- <code> is the code obtained on the Auth. Request
Authorization: Basic <XXXX> --- <XXXX> is the result of base64(client_id+":"+client_secret)
Content-Type: application/x-www-form-urlencoded
...我收到以下错误消息:
{
"error":{
"message": "create_access_token() takes exactly 3 arguments (2 given)",
"code": 400,
"title": "Bad Request"
}
}
我已经检查了授权是否正确(基本使用我的应用程序中的 OAuth 凭据),并且我使用的是在上一个授权请求中使用的相同 redirect_uri,以及从中获取的代码。
¿怎么了?
P.S.:如果我删除任何或所有查询参数,我仍然会得到同样的错误
【问题讨论】: