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

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了错误:私有IP需要invalid_request device_id和device_name相关的知识,希望对你有一定的参考价值。

我正在使用[localhost:8080]使用Google Drive API进行开发。突然,我觉得在我的本地部署沙箱中测试它,它的IP地址为[192.168.1.1:8080]。并且根据我在开发人员控制台客户端回调URL中更改了凭据。我正在使用OAuth2WebServerFlow来获取用户同意的刷新令牌。然后将来我使用刷新令牌和OAuth2WebServerFlow来验证用户。但我很惊讶 - 我得到了错误:

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

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

答案

编辑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

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

在控制台中,如果您的重定向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则没有。

另一答案

在进行Oauth呼叫时,Google不会接受本地(私人)IP地址。我的解决方法是在我的Windows主机文件中为本地IP添加一个条目:

WindowsSystem32driversetc

192.168.1.2   fakedomain.com

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

另一答案

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

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

另一答案

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

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

另一答案

值得注意的是,在Mac上你可以通过编辑root来做同样的事情:

/private/etc/hosts

添加如上所述的类似行

192.168.60.10   fakedomain.com
另一答案

修改 Windows System32 drivers etc hosts中的文件主机

将“192.168.1.2 fakedomain.com”添加到hosts文件中 重启你的窗户

将谷歌控制台192.168.1.2更新更新到fakedomain.com

以上是关于错误:私有IP需要invalid_request device_id和device_name的主要内容,如果未能解决你的问题,请参考以下文章

来自本地主机的 Google OAuth 引发 invalid_request 错误

Google Sign in API OAuth2 错误:youtube 范围内的“invalid_request”

Oauth 错误 invalid_request:redirect_uri 未列入白名单

错误:invalid_request 缺少必需参数:golang 中的 client_id

nuxt auth : Google 提供商返回 invalid_request

Google OAuth 2.0 invalid_request,缺少方案