我正在尝试为我的本地项目设置谷歌认证。我在python虚拟环境中运行项目,并为它们设置了不同的本地域名。比如projectname.dev。当我在浏览器中输入http://projectname.dev时,网站打开了。
当我去https://console.developers.google.com/project/
当我尝试通过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"被识别为一个真正的顶级域名,你会很好:)