【问题标题】:can't run the python-social-auth example django app无法运行 python-social-auth 示例 django 应用程序
【发布时间】:2013-10-07 21:50:25
【问题描述】:

为基本问题道歉。我是 django-social-auth 的用户,但无法启动 python-social-auth。

我已经下载了示例应用程序,成功同步了数据库,并将我的工作 facebook、linkedin 和 twitter 应用程序密钥添加到设置中。当我运行应用程序时,我会得到包含所有社交媒体链接的示例主页。

当单击 facebook OAuth2 时,我收到一个 http 错误:400 Client Error: Bad Request。暗示将 url 回调到我的服务器到 (/complete/facebook/) 的格式不正确。

当我单击 LinkedIn 或 Twitter 时,我收到 http 错误:401 Client Error: Unauthorized。

我错过了一些配置吗?有没有人开箱即用的示例应用程序?

谢谢 - 伙计。

【问题讨论】:

  • 我刚刚尝试使用 google oauth2 并得到“错误:redirect_uri_mismatch”。我更改的唯一设置是添加 SOCIAL_AUTH_GOGGLE_OAUTH2_KEY 和 _SECRET。
  • 能否分享您的应用程序的源代码。

标签: python django django-socialauth


【解决方案1】:

您是否在 settings.py 中为 LinkedIn 和 Twitter 设置了密码和密钥?

完成后,您可能必须使用这些提供商设置重定向网址。

我使用 google 进行了测试,并且必须修复我的 Google API 访问设置。

我将重定向网址更改为http://localhost:8000/complete/google-oauth2/

更新: 我在 oauth1 和 2 上遇到 LinkedIn 问题。似乎没有办法将所需的 API 密钥放入请求中。我试图在 requests_oauthlib 的 oauth1_auth.py 中硬编码,但还没有成功。

更新 2: Twitter 通过确保我的 Twitter 开发人员应用程序设置已选中“允许此应用程序使用 Twitter 登录”并在我的 settings.py 中设置了我的使用者密钥和秘密,从而为我工作,如下所示:

# TWITTER
#
SOCIAL_AUTH_TWITTER_KEY = '<...>'
SOCIAL_AUTH_TWITTER_SECRET = '<.....>'

【讨论】:

  • 谢谢@mcolin 有点尴尬,我的设置键确实有错误,一旦使用 facebook、linkedin (oauth1) 和 twitter 进行排序身份验证,一切正常。尽管我在身份验证时从linkedin请求的任何额外数据目前都是空的。
  • 我不太确定将“localhost:8000”设置为有效的redirect_uri 是一个好的解决方案,相反,您应该尝试告诉python-social-auth 发送正确的redirect_uri 参数而不是localhost: 8000。我不知道如何做到这一点。
  • 无法使用 django-social-auth stackoverflow.com/questions/21515035/…
  • 感谢,由于某种原因,我没有正确标记此标签。从 django-social-auth 到 python-social-auth 的过渡一定让我很震惊。
猜你喜欢
  • 1970-01-01
  • 2014-03-26
  • 1970-01-01
  • 2016-09-05
  • 2018-09-26
  • 1970-01-01
  • 1970-01-01
  • 2012-01-14
  • 1970-01-01
相关资源
最近更新 更多