我试图遵循此文档 - https://developers.google.com/api-client-library/python/guide/aaa_oauth
我使用此函数来创建auth url step1_get_authorize_url()
,它可以正常工作。我已成功编写回调处理程序并创建了凭证对象。
如何创建凭据,我如何重定向到继续网址以返回原始页面。
我不知道如何在step1_get_authorize_url()
中传递这个参数似乎有意义。
步骤1 / url-1创建登录链接,/ oauth2callbackhandler接收代码并创建凭证对象;如何重定向回/ url-1?
答案 0 :(得分:0)
我发现可以通过Flow对象的state
参数。
state = ''.join(random.choice(string.ascii_uppercase + string.digits)
for x in xrange(32))
flow.params['state'] = 'security_token%3D' + state + '%26url%3D' + urllib.quote_plus(self.request.url)
我将安全令牌存储在会话中以进行验证。
答案 1 :(得分:0)
step1_get_authorize_url()
是流对象的一种方法,流对象保存重定向URL并在创建时传递它。
flow = client.flow_from_clientsecrets(
secrets_file,
scope='https://www.googleapis.com/auth/analytics.readonly',
redirect_uri='urn:ietf:wg:oauth:2.0:oob')
auth_uri = flow.step1_get_authorize_url()
您将找到一个完整的示例和解释here。本教程提供了一个控制台应用程序,但该过程与Web应用程序中您需要执行的操作类似。