phe*_*ora 27 oauth-2.0 google-drive-api google-oauth
我正在使用[localhost:8080]使用Google Drive API进行开发.突然,我觉得在我的本地部署沙箱中测试它,它的IP地址为[192.168.1.1:8080].并且根据我在开发人员控制台客户端回调URL中更改了凭据.我正在使用OAuth2WebServerFlow来获取用户同意的刷新令牌.然后将来我使用刷新令牌和OAuth2WebServerFlow来验证用户.但我很惊讶 - 我得到了错误:
我不知道发生了什么或者我该如何解决它.发生了什么,我不明白
whi*_*101 35
编辑hosts文件的另一种方法是使用"Magic DNS"服务http://xip.io/或http://nip.io/(参见编辑)
xip.io是一个神奇的域名,为任何IP地址提供通配符DNS.您的LAN IP地址是10.0.0.1.使用xip.io,
Run Code Online (Sandbox Code Playgroud)10.0.0.1.xip.io resolves to 10.0.0.1 www.10.0.0.1.xip.io resolves to 10.0.0.1 mysite.10.0.0.1.xip.io resolves to 10.0.0.1 foo.bar.10.0.0.1.xip.io resolves to 10.0.0.1
使用此服务,您可以指定一个解析为私有地址的公共域.
在控制台中,如果您的重定向URI是(您希望您拥有的):
http://192.168.1.1:8080/auth/google_oath2/callback
替换为:
http://192.168.1.1.xip.io:8080/auth/google_oath2/callback
"重定向URI"似乎不接受通配符,因此需要在控制台中指定整个私有ip-xip.io.
我与xip.io没有任何关系; 我只是一个满意的用户.
2016编辑:我听说有关xip.io DNS服务器不稳定的报告.有一个copy-cat服务nip.io,其行为与xip.io完全相同,但在2016年7月,nip.io的响应率为100%,而xip.io则没有.
Jos*_*ehl 13
在进行Oauth呼叫时,Google不会接受本地(私人)IP地址.我的解决方法是在我的Windows主机文件中为本地IP添加一个条目:
\Windows\System32\drivers\etc
192.168.1.2   fakedomain.com
然后fakedomain.com在他们的开发控制台中注册Google.这对他们来说似乎是一个"真正的"域,但仍会在您的浏览器中解析为本地IP.我确信在Mac或Linux上采用类似的方法也行.
编辑:仅在本地开发时相关。
好的,我的 Mac 也遇到同样的问题。以下步骤解决了该问题
转到您的 google 开发控制台https://console.developers.google.com/project ,选择凭据并将回调 IP 更改为http://myflask.com:5000/oauth2callback等域。就我而言,我使用的是 Flask 应用程序,因此 5000 端口是必要的。
接下来,在您的文件中添加private/etc/hosts一个将上述主机名与您的 IP 相匹配的新条目,如下所示:
# (example IP)
172.1.1.1 myflask.com
请给 Google 一分钟时间来更新您的凭据,然后访问您的网站:http://myflask.com:5000
小智 3
我遇到了同样的错误,直到我将其从 IP 地址更改为域名(在我的情况下为 192.168.1.113 更改为 localhost),因此看起来 Google 不会接受裸 IP 地址。
为您的沙箱使用域名,或者如果没有本地域服务器,则设置一台。
| 归档时间: | 
 | 
| 查看次数: | 28079 次 | 
| 最近记录: |