Google api Google API身份验证:客户端的源站无效

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

当向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,它是
https://local.tools

结果:
{valid:false}

我使用的示例没有任何偏差(除了用我的21位clientid替换clientid):


我试图显示的项目在演示站点上显示得很好,但没有通过local.tools站点上客户端错误的无效来源。

处理此示例时,我收到了相同的控制台错误消息:

文件中说,不要忽视两个关键步骤(“在阅读说明时,重要的是不要忽视这两个关键步骤: 启用分析API[&]设置正确的来源”),但未明确说明在何处设置正确的来源

由于我的客户ID不起作用,我创建了一个新项目和一个新的客户ID。新项目可能没有必要,但我保留(并使用)它

以下是有效的方法:

  • 创建新项目
  • 添加并启用分析API
  • 创建一个新凭据-确保它是OAUTH凭据(滚动到此页面底部以获取说明)
在创建凭证期间,您将看到一个名为“限制”的部分 输入JavaScript来源、重定向URI或两者”。这是你可以输入你的起源的地方

保存并复制您的客户ID(和密码)


在我创建了新的OAUTH凭证、分配了源代码并使用了新生成的客户机ID之后,我的脚本就开始工作了

对我来说-我刚到这里:


然后选择正确的项目;然后选择与控制台错误消息中显示的ID相同的凭据。编辑凭据时,可以将多个来源添加到白名单中。

如果未启用API,则凭据不起作用。就我而言,需要采取以下步骤:

  • 输入“人民”
  • 从结果中选择“Google People 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云平台控制台上进行配置

  • 选择位于的项目
  • 导航到凭据
  • 单击相关OAuth 2.0客户端ID的编辑按钮
  • 将URI添加到授权的JavaScript源代码中
  • 别忘了存钱

  • 和“”是否在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中未更新。我希望如此