【问题标题】:What's the API Key for in Google Maps API V3?Google Maps API V3 中的 API 密钥是什么?
【发布时间】:2023-03-25 14:47:01
【问题描述】:

在旧版本的 API 中,我必须使用类似这样的方式将 javascript 插入到页面中才能正常工作:

http://maps.google.com/maps?file=api&v=2&key=GoogleMapsAPIKey

我必须为每个单独的站点配置 API 密钥。查看文档,它说要使基本地图正常工作,我只需要这个:

http://maps.google.com/maps/api/js?sensor=真/假

API 密钥适用于何处?如果我只打算使用基本的地图和标记而不使用更高级的功能,我需要担心吗?

我也在 localhost 上进行测试,但常见问题解答说我仍然需要为它注册一个密钥,我还没有这样做,它仍然有效。

【问题讨论】:

    标签: javascript google-maps google-maps-api-3 api-key


    【解决方案1】:

    虽然 Google Maps API V3 确实需要 API 密钥,但它的存在是有原因的。谷歌最近推出了以下usage limits

    使用每个 Maps API 的网站和应用程序可以免费 生成:

    • 每个 API 每天最多加载 25,000 个地图
    • 每天最多可加载 2,500 个已使用样式化地图功能修改的地图

    为了监控使用情况,需要一个 API 密钥,如 the developer notes make clear

    所有 Maps API 应用程序都应使用 API 密钥加载 Maps API。 使用 API 密钥可以监控应用程序的 Maps API 使用情况,并确保 Google 可以就您的应用程序与您联系 如有必要。如果您的应用程序的 Maps API 使用量超过 使用限制,您必须使用 API 密钥加载 Maps API 才能 购买额外配额。

    因此,虽然您不需要 API 密钥,但如果您想监控自己的使用情况,它会很有用,如果您购买额外的使用配额,它也是必需的。

    【讨论】:

    • 你能检查这三个问题吗Question 1Question 2Question 3即使在创建密钥后我也无法处理超出查询限制
    • 那么如果我们不使用 ApiKey 有什么使用限制?
    • @Oliboy50 我相信 API 密钥和非密钥用户的限制是相同的,密钥只是让您监控您的使用情况并查看您是否接近限制。
    • 自 2016 年 6 月 22 日起,Google 地图 V3 不再支持无钥匙访问。 stackoverflow.com/a/37994162/982002
    • Google 地图似乎再次支持无需 API 密钥的访问。好吧,至少我可以毫无问题地在本地进行,但从未在实际的 Web 服务器上尝试过。
    【解决方案2】:

    Google Maps API V3 不需要 API 密钥。所以你很高兴。

    编辑:自从我回答这个问题以来,Google 在 v3 中发布了对 API 密钥的支持,让您可以在 Google 的开发者控制台中查看您的 API 站点的使用情况。最初的答案仍然是准确的:API 密钥不是必需的,但现在建议使用它们。

    【讨论】:

      【解决方案3】:

      截至 2016 年 6 月 22 日Google Maps V3 no longer supports keyless access,因此您需要为以前从未在其上使用过 Google 地图的每个(引荐来源)域获取一个密钥。

      在此处获取您的密钥:https://developers.google.com/maps/documentation/javascript/get-api-key

      并将其附加到脚本的 URL,如下所示:

      <script src="https://maps.googleapis.com/maps/api/js?key=YOUR_API_KEY" type="text/javascript"></script>
      

      如果您不提供 API 密钥,您将看到此警告而不是渲染的地图:

      你的浏览器控制台会告诉你原因:

      Google Maps API 错误:MissingKeyMapError https://developers.google.com/maps/documentation/javascript/error-messages#missing-key-map-error

      【讨论】:

      • 虽然现在可能是官方要求使用 API 密钥,但现在没有它似乎仍然可以工作。有谁知道将来何时/是否会改变?
      • 如果您的域在 6 月 22 日之前实施了 google 地图,则无需密钥即可使用:新政策将立即适用于 2016 年 6 月 22 日或之后创建的所有 Maps API 实施。 -- googlegeodevelopers.blogspot.de/2016/06/…
      • @Seybsen,没有 API 密钥,谷歌地图会发出 警告,而不是错误:API 将继续工作,您只会在控制台中看到日志:如果您只收到没有任何错误的警告,API 将在该页面上正常工作。但我们建议您也修复潜在问题。您可以在the official documentation 上阅读更多信息
      • @Tilt 如果您在 2016 年 6 月 22 日之前在该域上拥有 Google 地图,您会看到警告,但如果您的域未知,您会看到错误(参见上面的屏幕截图)到 Google Maps API。
      • @Seybsen:在查看了屏幕截图和文档后,您绝对是对的,抱歉:P 显然,我在 2016 年 6 月 22 日之前使用 Google 地图查看的域。
      【解决方案4】:

      在 Google Map 的 Api 下选择 Google Maps JavaScript API 启用 API。 转到凭证部分。选择创建凭证。 从弹出窗口中选择 API Key,然后从后续弹出窗口中选择浏览器密钥。 .

      6.将YOUR_API_KEY替换为自己获取的api密钥

      【讨论】:

        【解决方案5】:

        除非您创建了谷歌地图密钥,否则您无法在 Android 应用中使用谷歌地图。您需要使用 keytool 生成 MD5 并使用它在谷歌地图网站上生成谷歌地图密钥。 keytool 应该位于安装了 sdk 的计算机上。我已经生成了开发人员谷歌地图密钥,并且我注意到该密钥仅适用于在该特定计算机上开发 Android 应用程序。如果您要在另一台计算机上开发 Android 应用程序,那么您需要为该计算机生成另一个谷歌地图密钥。如果您在 Android 应用程序上没有看到谷歌地图,而是看到了一个网格,这可能意味着您的谷歌地图密钥无效。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2012-03-18
          • 1970-01-01
          • 2011-03-21
          • 2012-08-31
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多