【问题标题】:GMail API: Authentication required twiceGMail API:需要两次身份验证
【发布时间】:2015-07-13 22:51:03
【问题描述】:

我正在 Google App Engine 上运行一个连接到 GMail API 的应用程序。一般来说,这一切都很好,但是我注意到如果我开始一个全新的会话,授权会要求授权两次。一次来自 Google App Engine(见下图),一次通过常规的同意屏幕,正如我所期望的那样。什么是启动第一次授权,有什么办法可以摆脱它?

我的授权码:

decorator = OAuth2Decorator(client_id=settings.CLIENT_ID,
                    client_secret=settings.CLIENT_SECRET,
                    scope=settings.SCOPE)

class gmailAuth(webapp2.RequestHandler):
 @decorator.oauth_aware
 def get(self):
    if decorator.has_credentials():
      self.response.out.write('success')
    else:
      self.redirect(decorator.authorize_url())

【问题讨论】:

  • 如果您自己进行 oauth,则不应使用 appengine 页面安全设置。
  • 不确定我是否明白你的意思。这将如何转化为上面的代码?
  • 抱歉,我现在看不了太多,但似乎问题是您已将页面配置为使用 appengine 用户服务进行身份验证,但您也在手动授权范围。
  • 我会调查的,谢谢。问题是应用引擎授权仅出现在此页面上,我正在使用 webapp2 用户模型作为用户帐户,所以不确定是否可以。
  • 查看您的 xml 是指定页面安全设置还是页面代码本身。

标签: python google-app-engine google-oauth gmail-api


【解决方案1】:

我发现 @decorator.oauth_aware 指的是我没有使用的 Google Account API。这就是导致屏幕出现的原因。这意味着,由于我使用的是 webapp2 身份验证,我将不得不参考非 GAE 特定的 API 身份验证。

【讨论】:

    猜你喜欢
    • 2023-03-22
    • 1970-01-01
    • 2019-08-11
    • 2016-01-23
    • 1970-01-01
    • 2020-07-11
    • 2018-10-25
    • 2013-04-15
    • 1970-01-01
    相关资源
    最近更新 更多