为何使用 Routes API
借助 Routes API,您可以使用交通详细信息、最新的交通和道路状况以及路线偏好设置获取准确的路线和行程信息:
不同交通方式的类型和功能
车辆的朝向
上车或下车的路边
路况和封路
安全问题,例如避免危险区域或提供安全的接人区域
借助可选功能(例如过路费和行程元数据,例如时间和距离以及燃油效率),平衡路线规划需求的延迟时间、质量和费用
您还可以确定最有效的调度路线,例如:
如何最好地分配一组工人来提取一系列包裹
确定从哪个仓库将包裹配送到最终目的地
您可以使用 Routes API 做些什么?
借助 Routes API,您可以获取两类主要的路线信息:
从某个地点前往单个或多个目的地的路线
多个起点和终点之间可能的路线的矩阵。
获取单个或多个目的地的路线
借助 Routes API Compute Routes
方法,您可以计算以下位置之间的距离:
查询不同交通方式的路线,以及单个或多个目的地的路线:
交通模式,包括公共交通、驾车、两轮车、步行或骑车。
一系列航点,您可以优化这些航点的顺序,以便以最有效的方式顺序飞行。
指定起点、目的地和路点的多种方式:
文本字符串。例如:“芝加哥,伊利诺伊州”“达尔文,澳大利亚北领地”“1800 Amphitheatre Parkway, Mountain View, CA 94043”或“CWF6+FWX Mountain View, California”
地点 ID
经纬度坐标(可选填车辆航向)
根据您的需求和目标微调路线选项:
根据车辆的发动机类型(柴油、电动、混合动力、汽油)选择省油或节能路线。如需了解详情,请参阅获取环保路线。
为流量计算设置精细选项,让您能够权衡质量与延迟时间。如需了解详情,请参阅指定是否要包含流量数据以及如何包含。
为路点设置车辆航向(行驶方向)和路侧信息,以提高 ETA 的准确性。如需了解详情,请参阅指定车辆行驶方向和路侧。
请求获取过路费信息以及路线距离和预计到达时间。如需了解详情,请参阅计算路线的过路费。
使用字段掩码仅请求所需数据,从而控制延迟时间和质量,这有助于避免产生不必要的处理时间和更高的请求结算费率。如需了解详情,请参阅选择要返回的信息。
获取可能路线的矩阵
Routes API Compute Route Matrix
方法会为多个起点和终点之间的推荐路线提供信息矩阵,包括距离和预计到达时间,以帮助您根据业务需求选择最佳出发地和目的地。您可以请求以下类型的距离数据:
所选出行方式的行程距离
距离(以公里或英里为单位)
预计行程时间(堵车时)
借助距离数据,您可以确定在多个可能的起点和目的地之间,将乘客、运输或工人转移的最有效方式。
您可以在计算整个矩阵之前流式传输响应的元素,从而缩短响应延迟时间。
您可以为每个服务器端请求指定多个起点和目的地,其中起点数量乘以目的地数量不得超过 625。
Routes API 的运作方式
Routes API 有两个方法:ComputeRoutes
和 ComputeRouteMatrix
。
ComputeRoutes
Routes API ComputeRoutes
方法接受包含请求详细信息的 JSON 请求正文的 HTTP POST 请求。必需提供起点、目的地、travelMode 和字段掩码,以指定要返回的字段。
示例
curl -X POST -d '{ "origin": { "address": "1800 Amphitheatre Parkway, Mountain View, CA 94043" }, "destination": { "address": "Sloat Blvd &, Upper Great Hwy, San Francisco, CA 94132" }, "travelMode": "DRIVE" }' \ -H 'Content-Type: application/json' -H 'X-Goog-Api-Key: YOUR_API_KEY' \ -H 'X-Goog-FieldMask: routes.duration,routes.distanceMeters' \ 'https://routes.googleapis.com/directions/v2:computeRoutes'
然后,该服务会计算所请求的路线,并返回您请求的字段。
ComputeRouteMatrix
Routes API ComputeRouteMatrix
接受包含请求详细信息的 JSON 请求正文的 HTTP POST 请求。必需提供至少一个起点、两个或更多目的地、travelMode 以及一个字段掩码,以指定要返回的字段。
示例
curl -X POST -d '{ "origins": [ { "waypoint": { "location": { "latLng": { "latitude": 37.420761, "longitude": -122.081356 } } } }, { "waypoint": { "location": { "latLng": { "latitude": 37.403184, "longitude": -122.097371 } } } } ], "destinations": [ { "waypoint": { "location": { "latLng": { "latitude": 37.420999, "longitude": -122.086894 } } } }, { "waypoint": { "location": { "latLng": { "latitude": 37.383047, "longitude": -122.044651 } } } } ], "travelMode": "DRIVE" }' \ -H 'Content-Type: application/json' -H 'X-Goog-Api-Key: YOUR_API_KEY' \ -H 'X-Goog-FieldMask: originIndex,destinationIndex,duration,distanceMeters,status,condition' \ 'https://routes.googleapis.com/distanceMatrix/v2:computeRouteMatrix'
响应包含所有起点和目的地路点组合的可能路线。
资源
下表汇总了通过 Routes API 提供的资源及其返回的数据。
数据资源 | 返回的数据 | 返回格式 |
---|---|---|
ComputeRoutes | 返回路线、路段和步骤,以及备选路线(如果请求)。 | JSON |
ComputeRouteMatrix | 返回从一个起点路径点到一个目的地路径点的路线数组。 |
如何使用 Routes API
1 | 开始设置 | 首先设置 Google Cloud 项目,然后完成后续的设置说明。 |
2 | 计算路线并查看响应 | 如需了解详情,请参阅获取路线和查看路线响应。 |
3 | 计算路线矩阵并查看响应 | 如需了解详情,请参阅获取路线矩阵和查看路线矩阵响应。 |
可用的客户端库
如需查看 Routes API 的可用客户端库列表,请参阅客户端库。