错误:私有IP需要invalid_request device_id和device_name

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来验证用户.但我很惊讶 - 我得到了错误:

  1. 那是一个错误.错误:私有IP需要invalid_request device_id和device_name:

我不知道发生了什么或者我该如何解决它.发生了什么,我不明白

whi*_*101 35

编辑hosts文件的另一种方法是使用"Magic DNS"服务http://xip.io/http://nip.io/(参见编辑)

xip.io是一个神奇的域名,为任何IP地址提供通配符DNS.您的LAN IP地址是10.0.0.1.使用xip.io,

        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
Run Code Online (Sandbox Code Playgroud)

使用此服务,您可以指定一个解析为私有地址的公共域.

在控制台中,如果您的重定向URI是(您希望您拥有的):

http://192.168.1.1:8080/auth/google_oath2/callback
Run Code Online (Sandbox Code Playgroud)

替换为:

http://192.168.1.1.xip.io:8080/auth/google_oath2/callback
Run Code Online (Sandbox Code Playgroud)

"重定向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
Run Code Online (Sandbox Code Playgroud)

然后fakedomain.com在他们的开发控制台中注册Google.这对他们来说似乎是一个"真正的"域,但仍会在您的浏览器中解析为本地IP.我确信在Mac或Linux上采用类似的方法也行.

  • 对设备没有帮助 (2认同)

phi*_*web 7

编辑:仅在本地开发时相关。

好的,我的 Mac 也遇到同样的问题。以下步骤解决了该问题


小智 3

我遇到了同样的错误,直到我将其从 IP 地址更改为域名(在我的情况下为 192.168.1.113 更改为 localhost),因此看起来 Google 不会接受裸 IP 地址。

为您的沙箱使用域名,或者如果没有本地域服务器,则设置一台。