我已经了解了OAuth2的工作原理(通过https://developers.google.com/api-client-library/python/guide/aaa_oauth),现在有一个OAuth2Credentials对象(让我们调用对象credentials
)我想用于Google Apps配置目的(此处的示例)正在使用网站,但可能是任何gdata apis)
如果我尝试:
client = gdata.sites.client.SitesClient(site="test-site",domain='my.domain')
client = credentials.authorize(client)
我得到了
TypeError: new_request() got an unexpected keyword argument 'http_request'
当我尝试做任何事情时
如果我尝试
client = gdata.sites.client.SitesClient(site="test-site",domain='my.domain', auth_token=credentials)
或
client = gdata.sites.client.SitesClient(site="test-site",domain='my.domain', auth_token=credentials.access_token)
我得到一个AttributeError,相关对象(凭证或credentials.access_token)没有属性'modify_request'
我能尝试什么想法?
答案 0 :(得分:0)
我不完全确定Google的客户端代码,但您可以随时尝试(无耻插件)sanction。它是我之前在Github和PyPI上发布的OAuth 2.0客户端。
好处:
缺点:
答案 1 :(得分:0)
此answer表示您必须先对OAuth2Credentials对象进行monkeypatch,然后再将其传递给SitesClient(auth_token=credentials)
。它有一个答案显示如何进行猴子补丁