【问题标题】:Making a Google API key work with requests from localhost [duplicate]使 Google API 密钥与来自本地主机的请求一起工作 [重复]
【发布时间】:2017-12-02 11:40:03
【问题描述】:

我正在使用在 localhost:8759 上运行的服务器运行我正在处理的网站的副本。该网站使用Google's address autocomplete capability。我在页面底部有一个脚本元素,其 URL 为 https://maps.googleapis.com/maps/api/js?key=XXXXXX&libraries=places,实际 API 密钥代替了 XXXXXX。 API 密钥受到限制,因此只能在我们的生产和测试服务器中使用。

我希望它改为在 localhost 上工作。最初,我尝试在 localhost 上运行网站,但自动完成功能不起作用。我在控制台上看到一个错误提示 Google Maps API error: RefererNotAllowedMapError

我去了Google's Developer Console,将localhost:8759/*添加到推荐人列表中,并按照谷歌的建议等待了5分钟以上。自动完成仍然不起作用。我看到一个错误提示 This API project is not authorized to use this API. Please ensure this API is activated in the Google Developers Console

我尝试添加没有限制的密钥并使用它。自动完成仍然不起作用。我遇到了上一段中提到的错误。

当它位于来自我们的测试服务器(在引荐来源列表中有一个 IP 地址)或生产(在引荐来源列表中有一个域)的页面上时,自动完成功能可以正常工作,但我不能它在本地主机上工作。

我怎样才能让它工作?

【问题讨论】:

  • 我找到了一种使用真实 IP 地址运行我的个人开发服务器的方法。这个问题对我来说不再重要了。我可能会继续在这里偷看,尝试人们的建议,并发布发生的事情,以防我对其他人有用。

标签: google-maps-api-3


【解决方案1】:

根据我的经验,省略斜杠和协议但包括端口似乎有效: 例如: localhost:5000localhost:8759 在你的情况下

【讨论】:

  • 我有点困惑,为什么在限制中省略域中的斜杠和协议会使其工作,当它不能使用完全没有限制的键时。但是我尝试了您的建议,但仍然收到错误消息This API project is not authorized to use this API
  • 听起来您还没有为具有激活密钥的项目启用API。可能不是关键限制的问题。确保单击“启用 API”并选择要用于项目的 API。你做到这一步了吗? link
猜你喜欢
  • 2017-01-12
  • 2015-05-07
  • 2016-07-16
  • 1970-01-01
  • 2018-09-17
  • 1970-01-01
  • 2022-12-30
  • 2016-12-30
  • 1970-01-01
相关资源
最近更新 更多