11

我最近一直在进行开发,将我们的地图升级到 v3,并且在开发过程中我使用了我自己的个人密钥。一切正常。到了投入生产的时候,我让某人通过公司的谷歌帐户生成了一个密钥,但现在它不起作用。我坐在他们旁边确保他们正在生成浏览器密钥,并且我很确定在匹配两者的“推荐人”部分下的域是正确的: .mydomain.com/ mydomain.com /*

我已经验证我们正在使用浏览器应用程序的密钥。

我已通过服务面板验证了 Google Maps API v3 已打开。一切都与我用钥匙做的方式相同。我认为唯一的区别是他们在公司帐户上启用了计费,而我的密钥没有。我们希望将其从我的密钥中移除,以查看它如何接收超过我帐户的 25k 次观看/天限制。

使用公司 API 密钥时,地图会加载,然后很快我会收到一个警告框,上面写着:“Google 已禁用此应用程序的 Maps API。提供的密钥不是有效的 Google API 密钥,或者未经授权用于此站点上的 Google Maps Javascript API v3。如果您是此应用程序的所有者,您可以在此处了解如何获取有效密钥:https ://developers.google.com/maps/documentation/javascript/tutorial#api_key "

如果我然后用我自己的密钥替换密钥,并使用相同的引用设置,它可以工作..

任何帮助将不胜感激。

4

11 回答 11

22

你错过了v=3你之前的key={yourkey}

像这样:

maps.googleapis.com/maps/api/js?v=3&key={your key}&sensor=false
于 2013-07-19T12:05:11.563 回答
10

我能够通过简单地生成一个新的浏览器密钥来解决这个问题。我生成了,把它扔到浏览器中,加载了地图。然后我进入并从以前的密钥中复制了我的推荐人。已保存。刷新。它仍然有效。老实说,我认为这是谷歌的一个错误,在我们生成原始密钥的那一天,它吐出了无效的密钥。

于 2013-03-12T16:27:49.783 回答
5

实际上,您希望Google Maps JavaScript API启用而不是Google Maps API v3因为前者是您在此处实际使用的。后者现在分为iOS和Android BTW。

您还需要将您的参考添加到您的服务器密钥中。

如果它是本地的,它应该是这样的:

localhost/*

于 2015-04-08T07:08:53.827 回答
4

我认为您必须检查推荐人。API 控制台站点上的给定示例是:

Example: *.example.com/*. *One URL or pattern per line.*

尝试在不使用通配符的情况下包含完整的引用名称。通配符的用法似乎有点奇怪。更多人为此苦苦挣扎,请参阅帖子。您可以在Google API 控制台帮助页面上找到可能的白名单配置的说明。

(您提到您的个人密钥与您的公司密钥具有相同的引荐来源。我想知道这是否可能,因为在这种情况下您可以为同一个应用程序使用不同的密钥。)

于 2013-03-08T14:03:20.383 回答
3

我把头撞在墙上了一会儿。包括示例没有做的版本号,为我修复了它。

<script type="text/javascript" src="https://maps.googleapis.com/maps/api/js?v=3.exp&key=YOURKEY">

^ 那个有?v=3.exp一点

于 2014-10-12T07:33:11.073 回答
2

在推荐人下,我们有*. 修复实际上是将其留空 `` 这意味着允许所有。

于 2015-02-27T14:30:53.187 回答
2

v=3;在您的密钥之前添加。

maps.googleapis.com/maps/api/js?**v=3;**key={your key};sensor=false
于 2015-11-23T09:55:08.340 回答
2

我收到了许多客户关于他们网站上的谷歌地图问题的报告。我检查并收到“无效密钥”错误。

奇怪的是,谷歌过去常常在 API 密钥之前和之后给出带有空格的密钥。过去,当我离开空格时,钥匙坏了。记得离开这些空间令人沮丧。

现在,trim()我将当前的 API 密钥(带或不带空格)提交到谷歌地图之前,它可以工作。

于 2018-07-03T00:11:37.270 回答
0

如果您在本地进行测试,请确保将您的本地 ip 添加到服务器密钥:

xxx.xxx.xxx.xxx

如果您希望地图 api 在整个域中可用,请将其添加到浏览器键中:

*.mydomain.com/*

希望这可以帮助。

于 2014-05-20T11:24:35.050 回答
0

我也收到了无效的密钥信息,在网上搜索了一遍之后,发现了我的问题。它也可能影响其他人。它与钥匙无关。

我发现我在“初始化”函数中有一个错误(在我的例子中,mapOptions 中的一行末尾缺少逗号)。出现这种情况是因为我添加了一个新的(最后一个)行,并且未能在前一行的末尾放置一个逗号。即使在最后一行,始终使用逗号也是一个很好的论据。

我现在可以打开或关闭删除/替换该逗号的无效键消息。我的结论是,与地图相关的 JS 中的任何错误都可能导致它。

于 2014-10-03T19:02:35.660 回答
0

现在从谷歌添加地图变得比以前更成问题。在https://leafletjs.com/页面上,您会发现另一个更方便的带有地图的库。

于 2019-07-21T14:15:20.513 回答