常见问题解答

此页面仅适用于拥有旧版 Maps APIs for Work 或 Maps API for Business 许可的客户。此页面不适用于拥有新版 Google Maps APIs Premium Plan2016 年 1 月上市发售)的客户。

本常见问题解答涵盖特定于旧版 Google Maps APIs for Work 许可的问题。

对于涉及所有 Google Maps APIs 的共性问题,请参阅 Google Maps APIs 常见问题解答

入门指南

使用限制

使用 Google Maps APIs

KML

网址签名

样式设置

入门指南

Google Maps APIs for Work 包含哪些产品?

Google Maps APIs for Work 中包含下列 Google 产品。使用这些产品的应用涵盖在 Google Maps APIs for Work SLA 范围内,可以享受技术支持

下列 API 不在 Google Maps APIs for Work 的范围内。使用这些 API 的应用必须遵守相关 API 已经发布的服务条款,并且目前不在 Google Maps APIs for Work SLA 的涵盖范围内,也没有资格获得技术支持:

如何为 Google Maps APIs for Work 获取技术支持?

Google Maps APIs for Work 客户可以在 Google Cloud Support Portal 上提交一个新的 Google 支持案例,网址为:

https://google.secure.force.com/

访问此门户需要使用用户名和密码。如果您没有帐号,请填写此表单

如何重置 Google Cloud Support Portal 的登录凭据?

我忘记了密码Google Cloud Support Portal 登录页面上也提供了此链接。

Google Maps APIs for Work 的服务条款有哪些?

如果您是 Google Maps APIs for Work 客户,请参阅您的协议,了解约束 Google Maps APIs 使用的条款。

使用限制

如何跟踪和报告 Google Maps APIs for Work 消耗?
  • 对于 Google Maps APIs for Work 许可,Maps JavaScript API、Street View Image API 和 Static Maps API 消耗计算基于页面查看次数

    一次页面查看定义为:

    1. 向页面加载一次 Google Maps JavaScript API。使用 Maps JavaScript API 的页面每次重新加载时都会重新加载该 API。用户与地图的交互(例如,平移、缩放、更改地图类型)不会生成更多的页面查看次数。不过请注意,如果将 API 加载到页面中,则即使随后未使用 API 显示地图,也会生成一次页面查看。因此,我们不建议包含会将 API 加载到页面模板中的 <script> 标记,而是建议您在仅为响应可选用户活动而显示的地图所在的页面上异步加载 API
    2. 一次 Google Street View Image API 或 Google Static Maps API 图像请求。

    Google Maps APIs for Work 客户可以在 Google Cloud Support Portal 中跟踪他们的页面查看消耗,支持门户的网址为:https://google.secure.force.com/

    请注意,Google Maps APIs 标准和Premium Plan应用通过地图加载次数进行限制,这与页面查看次数稍微不同。如需了解详细信息,请参阅 Google Maps APIs 常见问题解答

  • Google Maps Mobile SDK for Work 使用地图加载次数跟踪消耗。请参阅 Google Maps Mobile SDK 的使用限制了解详细信息。
  • Google Maps APIs 网络服务使用请求次数跟踪消耗(Google Maps Distance Matrix API 使用元素数量跟踪消耗)。请参阅 Google Maps APIs 网络服务的使用限制了解详细信息。
Google Maps JavaScript API 的使用限制是多少?

构成页面查看次数(如上文定义)的请求次数将消耗您的 Google Maps APIs for Work 许可包含的已购买总页面查看次数。如果超出此限制,您需要及时续订您的许可。

Google Maps Mobile SDK for Work 的使用限制是多少?

每次地图加载都会消耗您的 Google Maps Mobile SDK for Work 许可包含的已购买总地图加载次数。如果超出此限制,您需要及时续订您的许可。请参阅 Google Maps Mobile SDK 使用限制了解详细信息。

Google Maps APIs 网络服务的使用限制是多少?

Google Maps APIs for Work 客户的各个 Google Maps APIs 网络服务的使用限制如下所示:

网络服务 限制
Directions 每日配额起始额度为每 24 小时 100,000 次请求,基于年度合同购买。每次请求最多 23 个路径点。使用率限制为每秒 10 次请求。
Elevation 每日配额起始额度为每 24 小时 100,000 次请求,基于年度合同购买。每次请求最多 512 个点。使用率限制为每秒 10 次请求。
Geocoding 每日配额起始额度为每 24 小时 100,000 次请求,基于年度合同购买。使用率限制为每秒 10 次请求。
Distance Matrix 每日配额起始额度为每 24 小时 100,000 个元素,基于年度合同购买。每次查询最多 625 个元素,每 10 秒最多 1,000 个元素。
Time Zone 每日配额起始额度为每 24 小时 100,000 次请求,基于年度合同购买。使用率限制为每秒 10 次请求。
Roads 每日配额起始额度为每 24 小时 100,000 次请求,基于年度合同购买。使用率限制为每秒 10 次请求。每次请求最多包含 100 个点。

这些限制适用于每个 Google Maps APIs for Work 客户端 ID 或开发者项目,并且将在所有应用及使用给定客户端 ID 或开发者项目的 IP 地址之间共享。

如果您需要更高的使用限制,请联系您的 Google Maps APIs for Work 客户经理了解购买信息。

Google Places API 和 Google Maps Geolocation API 的使用限制是多少?

如果您已作为 Google Maps APIs for Work 合同的一部分购买了 Google Places API 或者 Google Maps Geolocation API,您的限制将列在 Google API ConsoleQuotas 部分中。如果您需要更高的限制,请通过 Google Cloud Support Portal 联系 Google

从 Google Maps JavaScript API 发起的地理编码请求的使用限制是多少?

Google Maps APIs for Work 客户从 Maps JavaScript API 发起的地理编码请求的使用限制如下所示:

服务 使用的 API 限制
Geocoding
Google Maps JavaScript API

Geocoding 的每日分配和使用率限制将按用户会话应用,与共享给定 IP 地址的用户数量无关。

此服务不应用于批处理地理编码操作,您应使用 Google Maps Geocoding API 进行此类操作。

Google 地图图像 API 的使用限制是多少?

Google Maps APIs for Work 客户的 Google 地图图像 API 的使用限制如下所示:

服务 限制
Google Static Maps API

请求将消耗 Google Maps APIs for Work 许可中包含的已购买总页面查看次数。

最大图像大小为 2048 x 2048 像素。这一结果由 size x scale 得出,请参阅下面的说明。

Google Street View Image API

请求将消耗 Google Maps APIs for Work 许可中包含的已购买总页面查看次数。

最大图像大小为 2048 x 2048 像素。


最大可以请求 2048x2048 像素的 Google Static Maps API 图像。由于静态地图请求中的 scale 值会影响返回的像素数,因此每个缩放级别的最大 size 值有所不同:

缩放 最大大小 返回
1 2048x2048 2048x2048
2 1024x1024 2048x2048
4 512x512 2048x2048

Google Street View Image API 不支持 scale 参数。

使用 Google Maps APIs

我应该为不同的 Google Maps APIs 产品使用什么密钥或凭据?

每次使用 Google Maps APIs 时,您都必须包含凭据以验证您的请求。需要的凭据类型因与 Google Maps APIs for Work 许可搭配使用的 API 的不同而有所差异。对于大多数 API,您需要使用您的客户端 ID。在某些情况下,您需要一个 API 密钥。

  • 客户 ID:以 Google Maps APIs for Work 客户身份注册时,您将获得一个客户端 ID。

    加载使用客户 ID 的 API 示例:&client=gme-companyname

  • 数字签名:一般来说,Google Maps APIs for Work 客户在通过客户端 ID 进行身份验证时需要使用数字签名。数字签名使用 Google 为您提供的加密密钥生成。
  • API 密钥:API 密钥是您使用 Google API Console 生成的一个唯一标识符。API 密钥一般通过标准 API 生成。Google Maps APIs for Work 客户通常使用客户端 ID,尽管多个 API 要求 API 密钥,而不是客户端 ID。对于要求 API 密钥的 API,您可以选择在不施加限制的情况下使用 API 密钥(称为“一般 API 密钥”),也可以为了确保更大的安全性而使用存在限制的密钥(建议)。任何平台的 API 都可能使用一般 API 密钥。

    如果您选择向 API 密钥添加限制(例如,IP 地址),一旦限制,密钥将只能在支持该类型限制的平台上工作。存在四种类型的 API 密钥限制:

    • 服务器限制(通过 IP 地址)- 适用于 Web Service API
    • 浏览器限制(通过 HTTP 引荐来源网址)- 适用于网络 API
    • Android 应用限制(通过软件包名称和指纹)- 适用于 Android API
    • iOS 应用限制(通过 iOS 捆绑包标识符)- 适用于 iOS API

    同一平台的 API 可以使用相同的限制性密钥。

    :在 Google API Console 中生成密钥时,Google Maps APIs for Work 用户必须确保选择为注册时为他们创建的项目。该项目的名称中包含 BusinessWork 词语。

    加载使用密钥的 API 示例:&key=AIzaSyBjsINSH5x39Ks6c0_CoS1yr1Mb3cB3cVo

下表列出了应与各个 Google Maps APIs 产品一起使用的凭据。(如上文所述,API 密钥限制类型为:服务器、浏览器、Android 和 iOS。)

API Google Maps APIs for Work 用户
Google Maps Android API 限制为 Android 的 API 密钥
Google Places API for Android 不可用
Google Maps SDK for iOS 限制为 iOS 的 API 密钥
Google Places API for iOS 不可用
Google Maps JavaScript API 客户 ID
Google Static Maps API 客户 ID + 数字签名
Google Street View Image API 客户 ID + 数字签名
Google Maps Embed API 不可用
Google Maps Directions API 客户 ID + 数字签名
Google Maps Distance Matrix API 客户 ID + 数字签名
Google Maps Elevation API 客户 ID + 数字签名
Google Maps Geocoding API 客户 ID + 数字签名
Google Maps Geolocation API 限制为服务器的 API 密钥
Google Maps Roads API 限制为服务器的 API 密钥
Google Maps Time Zone API 客户 ID + 数字签名
Google Places API Web Service 限制为服务器的 API 密钥
如何使用 Google Maps APIs for Work 客户端 ID 从通过 HTTPS (SSL) 加载的页面访问 Google Maps APIs?

要从通过 HTTPS 加载的页面访问 Google Maps APIs,您首先必须授权 HTTPS 网址,这些网址是您希望在其上面使用 API 的目标网址。

使用 Common Loader 的 base_domain 参数时,如何通过 HTTPS (SSL) 加载 Google Maps JavaScript API?

使用 Common Loader 的 base_domain 参数集时,无法通过 SSL 加载 Maps JavaScript API。

base_domain 参数不会影响您应用的性能 - 无论从哪个网域加载 API,用于获取特定用户位置的 API 请求始终都会由最优的地图服务器处理。

base_domain 会使地理编码结果偏向特定区域;要在不使用 base_domain 的情况下获得相同的效果,请设置地理编码服务的 region 参数

KML

如何在地图上渲染托管在内网网站上的 KML 文件?

在 Google Maps JavaScript API 中生成 KML 叠层的 KmlLayer 类使用 Google 托管服务检索和解析要渲染的 KML 文件。因此,无法显示未托管在可以公开访问的网址上或者需要进行身份验证才能获取的 KML 文件。

如果您需要开发使用托管在内网网站上的 KML 文件的应用,我们建议您使用第三方 JavaScript 内容库在客户端上渲染 KML 文件。由于 KML 文件通过浏览器分析,性能可能比使用 KmlLayer 类时的差。

网址签名

可以使用 JavaScript 签署网址吗?

我们强烈建议您不要使用 JavaScript 签署网址,因为这样会将您的加密密钥展示给最终用户。因此,仅应通过服务器端组件生成签名。

我为何会在 Google Maps APIs 网络服务请求中收到 HTTP 403 (Forbidden) 响应?

HTTP 403 响应表示存在权限问题,这很可能是因为无法对此请求验证签名。无法验证签名的原因可能是以下几个:

  1. 签名已经指定,但不适用于此请求。
  2. 请求指定 Google Maps APIs for Work 客户端 ID,但未指定签名,并且正在调用的网络服务要求使用客户端 ID 发起的所有请求都应包含有效签名。
  3. 签名已经指定,但关联的 Google Maps APIs for Work 客户端 ID 未指定。

样式设置

为什么商家无法在我的地图上显示?

使用 Google Maps JavaScript API 加载地图并包含 client 参数时,地图上的商家列表在默认情况下处于关闭状态。要将其打开,您需要在您的地图上添加一些样式设置代码

var styles = [
  {
    featureType: 'poi.business',
    stylers: [
      { visibility: 'on' }
    ]
  }
];

map.setOptions({styles: styles});