0

我正在尝试找到一种方法来验证和授权客户端访问 APIGEE。我似乎无法让它发挥作用。我正在使用 Python Requests-OAuthlib。这是我的代码:

 from requests_oauthlib import OAuth2Session

 client_id = r'my_client_id'
 client_secret = r'my_client_secret'
 redirect_uri = 'https://api.usergrid.com/org/app'

 oauth = OAuth2Session(client_id, redirect_uri=redirect_uri)
 authorization_url, state = oauth.authorization_url('https://api.usergrid.com/org/app/token', grant_type='client_credentials')
 redirect_response = raw_input(authorization_url)
 token = oauth.fetch_token('https://api.usergrid.com/org/app/token', client_secret=client_secret, authorization_response=redirect_response)

 url = "https://api.usergrid.com/org/app/my_collection"
 r = oauth.get(url)

我收到一个错误:“请提供代码或授权代码参数。”

关于我做错了什么的任何想法?我正在使用此处找到的 APIGEE 文档:http: //apigee.com/docs/app-services/content/authenticating-users-and-application-clients

先感谢您。

4

1 回答 1

0

您的客户端在授权请求中发送 response_type=code。这就是服务器不执行客户端凭据 Oauth 的原因。

这可能是您的 python 客户端的默认行为。在这种情况下,您可能希望使用简单的 http 客户端来控制事情。

于 2014-11-18T03:53:54.173 回答