我正在使用 OAuth 2.0 进行授权流程。
我已经通过此网址请求了授权码:
https://www.box.com/api/oauth2/authorize?response_type=code&client_id= {MY_CLIENT_ID}
然后我被重定向到box.net登录页面进行授权。
我已输入Box.net帐户的凭据。 授予帐户访问权限。然后我获得了我在URL中编码的授权代码,并发送了一个请求:
https://www.box.com/api/oauth2/token?grant_type=authorization_code&code= {AUTHORIZATION_CODE}&client_id={MY_CLIENT_ID}&client_secret={MY_CLIENT_SECRET_ID}
我收到了这个回复:
{"error":"invalid_client","error_description":"The client credentials are invalid"}
我多次检查过我的客户端ID和客户端密码ID。那是对的。这样的错误信息可能是什么原因?
答案 0 :(得分:1)
正如官方文件所述:
要获取access_token,您需要使用以下参数向https://www.box.com/api/oauth2/token发出POST请求...“,
虽然包括client_id
,client_secret
,grant_type
和代码在内的所有参数都是正确的,但如果您未向网址发出POST
请求,您将获得error: "invalid_client"
。
尝试:
curl https://www.box.com/api/oauth2/token \
-d 'grant_type=authorization_code&code={your code}&client_id={your client id}&client_secret={your client secret}' \
-X POST