【问题标题】:django social auth get wrong access_token from google oauth2django social auth 从谷歌 oauth2 获取错误的 access_token
【发布时间】:2014-12-12 01:15:37
【问题描述】:

我正在使用 django social auth 将 google oauth2 集成到我的网站。 问题是使用 django social auth ,我得到一个 access_token 像

ya29.2QCqpS-uKGXMNOP8yZnN6Z-F5LfVnyd7jwa8TaLP43nTEp2NUPB_p7Hi

虽然来自谷歌代码的代码示例 访问令牌就像:

ya29.2QCVXKc7XSNR3QxqRVAi0Z8Uz6mvolDGpezbZ9_r_oq7CXt01WvE9oUb90HXaynOLE4J8PjA5pzYDB

第一个不工作,第二个工作正常

有人对此有任何想法吗?

【问题讨论】:

  • 跟踪 http 流量并查看 (a) 调用不同,(b) django 返回的令牌与通过网络接收的相同。
  • 我向社交身份验证添加了痕迹。该代码使用与示例代码相同的参数向相同的 url 发送相同的请求。两者都调用 urllib.urlopen。
  • 跟踪实际的 http 流量(不是您的程序代码)。如果你能粘贴好的和坏的http对话,你的答案就在那里。

标签: python django google-oauth


【解决方案1】:

好的。 原来是范围问题。 示例代码将默认范围设置为 mail.google.com,而 social-auth 仅具有读取用户信息的默认范围。

token 长度的差异一定和作用域有关

【讨论】:

    猜你喜欢
    • 2014-11-02
    • 2020-09-23
    • 1970-01-01
    • 2012-02-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-08-10
    • 2016-03-12
    相关资源
    最近更新 更多