And*_*vey 44 ruby-on-rails oauth
我正在将Google Oauth2添加到Rails应用程序中,但无法超越早期阶段.
我已经设置了一个应用程序,并定义了客户端ID和秘密.但我得到了 Invalid parameter value for redirect_uri: Non-public domains not allowed: http://localhost/path/to/callback
这是什么意思?这是因为我正在测试本地开发环境吗?
谢谢你的任何想法.
编辑
这可能是因为应用程序的URI与发送URI不同.但是,当我去谷歌并尝试授权我的开发应用程序的路径时,我得到了OAuth2 redirect is invalid.这是使用本地托管应用程序的限制吗?
编辑2
我生成的请求看起来像这样:
https://accounts.google.com/o/oauth2/auth?response_type=code&client_id=###########&redirect_uri=http%3A%2F%2Fmyapp.dev%2Fusers%2Fauth%2Fgoogle_oauth2%2Fcallback&scope=https%3A%2F%2Fwww.googleapis.com%2Fauth%2Fuserinfo.profile&approval_prompt=&access_type=offline
Run Code Online (Sandbox Code Playgroud)
它是否正确.我用client_id尝试了这个,包括并排除了.apps.googleusercontent.com部分.似乎都没有用.
Ois*_*sin 67
我收到了在ubuntu上运行的python/tornado应用程序的重定向错误.使用localhost不起作用,突出显示已接受的答案.谷歌想要一个公共领域.
我的解决方案是搭载"example.com",这是公共的,并在我的/ etc/hosts文件中创建一个子域.子域可以在我的本地开发框中工作,谷歌会对example.com域感到满意.我通过谷歌控制台注册重定向,重定向成功地为我工作.
我在/ etc/hosts中添加了以下内容:
192.168.33.100 devbox devbox.example.com
Run Code Online (Sandbox Code Playgroud)
就我而言,IP是我机器的IP.我也可以使用127.0.0.1代替.
我的Google API控制台(https://code.google.com/apis/console)设置了新的客户端ID:
Hap*_*off 18
使用xip.io,您可以提供一个公共网址,以重定向到http://your_pow_app.192.168.0.1.xip.io/user/auth/google_oauth2/callback
经过测试和工作.
小智 5
我使用了我的公共主机名.如果您有静态IP地址,它会有所帮助.我用http://www.displaymyhostname.com/来获取我的主机名.我在创建新的Web应用程序客户端ID时将其直接插入Authorized JavaScript originins字段.
PS我的主机名看起来像这样:111.111.111.111.static.exetel.com.au
这是我对相关问题/sf/answers/1646200251/的回答
对于发现这一点的其他人来说,我的问题是几件事的结合。
我无法获得在本地计算机上工作的回调。控制台 API 控制台表明这是可能的,但我无法让它工作。不确定这是由于服务,还是由于我的网络/连接/防火墙/等。
在 API 控制台中,您必须指定完整的重定向 URI,而不仅仅是返回应用程序的根 url。
Google 在此处列出了范围参数https://developers.google.com/gdata/faq#AuthScopes。看来这些信息已经过时了,这些信息的正确格式现在是https://www.googleapis.com/auth/plus.me、https://www.googleapis.com/auth/youtube等。也许是其他人可以证实这一点吗?
我还发生了一些其他事情。我已经在这里对我的另一个问题写了完整的解释。不幸的是,我的评论被删除而不是被版主移动,因为我发布在错误的位置。我现在记不起我写的所有内容了。对于其他面临类似问题的人,请随时发表评论,这可能会唤起我的记忆,以便我可以提供一些想法。
| 归档时间: |
|
| 查看次数: |
65644 次 |
| 最近记录: |