django allauth -设置谷歌项目的认证api



我正在尝试为我的本地项目设置谷歌认证。我在python虚拟环境中运行项目,并为它们设置了不同的本地域名。比如projectname.dev。当我在浏览器中输入http://projectname.dev时,网站打开了。

当我去https://console.developers.google.com/project//apiui/凭证吗?我可以在那里设置javascript origin和authorized redirect uri等值。我将javascript的起源设置为http://projectname.dev,并试图为授权的重定向url设置相同的域,但它不起作用,我不得不把它留给localhost。

当我尝试通过django-allauth进行身份验证时,我从google得到了这样的响应:

**Error: invalid_request**
Invalid parameter value for redirect_uri: Non-public domains not allowed: http://projectname.dev/account/google/login/callback/

现在我的问题是:

  • 我可以开发项目的这一部分本地与域名如projectname.dev或我需要设置它为localhost?本地重定向从localhost -> projectname.dev工作吗?
  • 如果我可以用projectname.dev做到这一点,那么也许我在谷歌开发者控制台设置这个项目的方式有错误?

无论如何,如果你不能在Cloud Console中设置重定向URI,当你试图授权应用程序时,Google会把你扔出去。

我的建议是选择以下两种解决方案之一:

  • 如你所说,使用"localhost",使用某种重定向/NAT/代理到projectname.dev
  • 将projectname.dev替换为一个实际的域名,例如projectname.thisdomaindoesnotexist.com。然后配置此域名映射到您的服务器。

或者等待".dev"被识别为一个真正的顶级域名,你会很好:)

相关内容

  • 没有找到相关文章

最新更新