使用Python在APIGEE上进行身份验证和授权

时间:2014-11-18 03:07:49

标签: python python-requests apigee flask-oauthlib

我正在尝试找到一种方法来验证和授权客户端访问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)

我收到错误:“请提供代码或authorization_code参数。”

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

提前谢谢。

1 个答案:

答案 0 :(得分:0)

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

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