一切就绪!

着手开发前,请先阅读我们的开发者文档

激活 Google Maps Roads API

为帮助您起步,我们将引导您在 Google Developers Console 中先完成几项任务:

  1. 创建或选择项目
  2. 激活 Google Maps Roads API
  3. 创建相应密钥
继续

故障排除

在发生错误的情况下,系统将返回标准格式的错误响应正文,并将 HTTP 状态代码设置为错误状态。

响应包含的对象中有一个 error 对象,其中包括下列键:

  • code:这与响应的 HTTP 状态相同
  • message:错误的简短描述。
  • status:表示错误性质的状态代码

例如,发送无效的 placeId 参数将返回以下错误:

{
  "error": {
    "code": 400,
    "message": "\"placeId\" value is malformed: \"aChIJqaknMTeuEmsRUYCD5Wd9ARM\"",
    "status": "INVALID_ARGUMENT"
  }
}

可能的错误包括:

代码 状态 消息 故障排除
400 INVALID_ARGUMENT The key you provided is invalid. 您的 API 密钥无效或未包括在请求内。 请确保您已加入了完整的密钥,而且您已为该密钥启用 API。
400 INVALID_ARGUMENT "\"path\" parameter contains an invalid value: ☃" 您的请求包含无效自变量。 造成该错误的最可能原因是:
  • 您的 path 参数有问题。
    请确保点的数量至少为 1 但小于 100。 每个点都应是一对逗号分隔数字,例如:48.409114,-123.369158。 点应使用管道符号“|”分隔。
  • 您的请求包含无效 placeId
  • 您的请求同时包含 placeIdpath。 只能为每个请求指定上述其中一个参数。

如果为不再存在的道路或并非道路的地点传递 placeId,将不会返回此错误。

403 PERMISSION_DENIED Unregistered request was blocked. 请使用 Google Developers Console 登录。 您的 API 密钥无效或未包括在请求内。 请确保您已加入了完整的密钥,而且您已为该密钥启用 API。
404 NOT_FOUND HTTPS is required for this service. 确保您发送请求的对象是 https://roads.googleapis.com/ 而非 http://roads.googleapis.com/
429 RESOURCE_EXHAUSTED The request was throttled due to project QPS limit being reached. 您已超出自己在 API Console 中配置的每用户每秒请求数限制。 此限制应配置为防止单个或一小部分用户耗尽您每天的配额,同时还允许所有用户都能进行合理的访问。
429 RESOURCE_EXHAUSTED The request was throttled due to daily limit being reached. 您超过了项目的每日配额。

指数后退

当请求失败时,您应该确保通过指数后退重试请求。 例如,如果请求失败一次,一秒后重试;如果再次失败,则两秒后重试;然后是四秒后重试;依此类推。 这可以确保中断的请求或大规模故障不会因很短时间内许多客户端试图重试请求而给 Google 的服务器造成冲击。

发送以下问题的反馈:

此网页
Google Maps Roads API
Google Maps Roads API
需要帮助?请访问我们的支持页面