我确信许多Django开发人员在使用social-auth时必须遇到这个问题。 最初,当您开发它时,您希望在本地服务器上测试它,因此您将在您的etc / hosts中重定向域名。
我在文档中提到了这一点:
https://github.com/omab/django-social-auth#facebook
如果您在Facebook设置页面中定义重定向网址,请务必不要 定义
http://localhost:8000
,因为它不会 测试时工作。相反,我定义http://myapp.com并设置一个 在/ etc / hosts上映射或使用dnsmasq。
据我了解,您无法在/ etc / hosts中定义任何端口。
因此在那里定义了这个条目:
127.0.0.1 example.com
仍然没有点击我的运行在127.0.0.1:8000的Django服务器。
你们是怎么做到的?
谢谢,
答案 0 :(得分:4)
每个人都说,"将example.com添加到您的主机文件中......"但忽略了提到你应该在启动runserver后使用example.com:8000。以下是对我有用的更详细的步骤:
在linux上:
我知道这是一篇较旧的帖子,但我无法在任何地方找到完整的步骤。如有必要,请添加说明,因为我不是此专家。
答案 1 :(得分:0)
我已按照此处的步骤解决了重定向问题:https://serverfault.com/questions/397364/how-to-setup-named-virtual-hosts-in-nginx
简而言之,你需要在/ etc / hosts中有一个条目,就像我上面加上nginx代理之间的那样。
答案 2 :(得分:0)
安装fiddler。安装后,转到工具>主机。
然后您可以从127.0.0.1:8000映射到mysite.com
答案 3 :(得分:0)
The following finally fixed it for me...
Under Authorized JavaScript origins: http://localhost:8000
Under Authorized redirect URIs: http://localhost:8000/page-name-here
答案 4 :(得分:0)
如果在 / etc / hosts 中添加 127.0.0.1 mysite.com 后,你们中的任何人仍在挣扎,请检查您是否正在使用VPN。我仍然收到错误“无法连接到mysite.com:8000” 。我通过关闭VPN解决了此错误。