Google api Google API身份验证:客户端的源站无效
当向googleapi(gapi)发出auth请求时,它在checkOrigin上返回false 我已经删除了任何客户id或任何可以直接链接到我的帐户的内容,并将其替换为一个正则表达式,该正则表达式指示了数据的参考内容 Url:Google api Google API身份验证:客户端的源站无效,google-api,google-oauth,google-analytics-api,google-api-js-client,Google Api,Google Oauth,Google Analytics Api,Google Api Js Client,当向googleapi(gapi)发出auth请求时,它在checkOrigin上返回false 我已经删除了任何客户id或任何可以直接链接到我的帐户的内容,并将其替换为一个正则表达式,该正则表达式指示了数据的参考内容 Url:https://accounts.google.com/o/oauth2/iframerpc?action=checkOrigin&origin=https%3A%2F%2Flocal.tools&client_id=(\d{21}) 我的源url是本地url,它是htt
https://accounts.google.com/o/oauth2/iframerpc?action=checkOrigin&origin=https%3A%2F%2Flocal.tools&client_id=(\d{21})
我的源url是本地url,它是https://local.tools
结果:{valid:false}
我使用的示例没有任何偏差(除了用我的21位clientid替换clientid):
我试图显示的项目在演示站点上显示得很好,但没有通过local.tools站点上客户端错误的无效来源。处理此示例时,我收到了相同的控制台错误消息: 文件中说,不要忽视两个关键步骤(“在阅读说明时,重要的是不要忽视这两个关键步骤: 启用分析API[&]设置正确的来源”),但未明确说明在何处设置正确的来源 由于我的客户ID不起作用,我创建了一个新项目和一个新的客户ID。新项目可能没有必要,但我保留(并使用)它 以下是有效的方法:
- 创建新项目
- 添加并启用分析API
- 创建一个新凭据-确保它是OAUTH凭据(滚动到此页面底部以获取说明)
在我创建了新的OAUTH凭证、分配了源代码并使用了新生成的客户机ID之后,我的脚本就开始工作了 对我来说-我刚到这里:
然后选择正确的项目;然后选择与控制台错误消息中显示的ID相同的凭据。编辑凭据时,可以将多个来源添加到白名单中。如果未启用API,则凭据不起作用。就我而言,需要采取以下步骤:
清除浏览器缓存。开始在Chrome中出现这个错误,然后我创建了一个新的客户端id,但仍然存在这个问题。打开firefox,它工作了,所以我清除了Chrome上的缓存,它开始工作。尝试清除缓存,然后硬重新加载,我也有同样的错误,但当我尝试在chrome中的incognito浏览器上运行时,它起了作用。我由于浏览器扩展而出现错误。创建新的oauth凭据对我有效。关键点:将两者都添加到授权的JavaScript源代码框中,以便进行本地测试或开发。如果您正在运行它localhost将端口更改为5000,它将修复该端口尝试另一种适合我的浏览器(chrome),清除firefox上的缓存清除了该问题
(注意:如果不将托管uri添加到API凭据中授权的JavaScript源中,则会出现错误:重定向\u uri\u不匹配)清除缓存对我有效 对于React开发者尝试重新启动项目,否则它将一次又一次地显示相同的错误。这是一个参考策略问题。 这对我来说也是很长一段时间的痛苦 发现问题时,我的网站实例的推荐人策略设置为 没有推荐人。降级时将其设置为“无参考者”后 点击提示按预期显示 如果您使用的是Django,默认情况下,安全引用策略为“同源”。通过在设置文件中添加以下代码进行更改
# settings.py
SECURE_REFERRER_POLICY = 'no-referrer-when-downgrade'
与上面的几个答案相似,但有截图。如果您为Firebase创建了项目,也可以使用相同的步骤在Google云平台控制台上进行配置
和“”是否在API控制台中配置了deffo,并且您的本地服务器正在端口80上运行?请尝试编辑您的/etc/hosts,将您的演示站点URL指向127.0.0.1,然后查看发生了什么。因为我的开发环境不在127.0.0.1上,所以不会有什么好结果。它在哪个端口上运行也不重要。它可以在端口80以外的其他端口上使用。Google API身份验证:客户端的源站无效。--可能是这样,当您使用相同的电子邮件id创建客户端id和通过网页登录时是的,这正是我所需要的。非常感谢。现在看起来应该很明显了,但是文档有点难以理解。如果我使用本地主机进行测试,如何在那里添加oauth?例如,如果我需要让access访问您,则无需担心oAuth回调。当你使用给出的例子时,有一个小按钮,上面写着“谷歌认证”或者我不记得了。但它就在那里,你点击它,弹出一个窗口来验证。将我的域添加到源代码是我需要做的事情,包括将示例上载到服务器之后。我必须将服务器URL添加到源域。我的脚本在旧应用程序中使用新凭据。我相信这是谷歌的一个bug,因为我确实尝试过将我的源代码添加到我的旧凭证中。有同样的问题,这些步骤对我有效!诀窍是在创建凭证之前启用分析API。我不相信缓存在其中扮演了这么大的角色。我在iOS safari中遇到过这样的问题。iOS上的chrome接受源代码,但在safari中未更新。我希望如此