最近的道路

Roads API 最多可接受 100 个独立坐标,并返回每个点对应的最近路段。传入的点无需属于连续路径。

如果您使用的是依序 GPS 点,请使用沿实际道路。

请求

对最近的道路的请求必须使用 HTTPS 发送,并采用以下形式:

https://roads.googleapis.com/v1/nearestRoads?parameters&key=YOUR_API_KEY

必需参数

积分

要吸附的点。points 参数接受纬度/经度对列表。请用英文逗号分隔纬度和经度值。使用竖线字符“|”分隔坐标。例如:points=60.170880,24.942795|60.170879,24.942796|60.170877,24.942796。

示例

以下请求会根据指定的坐标列表返回一组路段。

网址

https://roads.googleapis.com/v1/nearestRoads
  ?points=60.170880%2C24.942795%7C60.170879%2C24.942796%7C60.170877%2C24.942796
  &key=YOUR_API_KEY

curl

curl -L -X GET 'https://roads.googleapis.com/v1/nearestRoads?points=60.170880%2C24.942795%7C60.170879%2C24.942796%7C60.170877%2C24.942796&key=YOUR_API_KEY'

回答

对于每个有效请求,Roads API 将以请求网址中指定的格式返回响应。

{
  "snappedPoints":
    [
      {
        "location":
          { "latitude": 60.170878428876755, "longitude": 24.94269540970182 },
        "originalIndex": 0,
        "placeId": "ChIJfVFHrM0LkkYRBzUQos_jR5w",
      },
      {
        "location":
          { "latitude": 60.17087741412199, "longitude": 24.942695474405202 },
        "originalIndex": 1,
        "placeId": "ChIJfVFHrM0LkkYRBzUQos_jR5w",
      },
      {
        "location":
          { "latitude": 60.170875416131736, "longitude": 24.942695601802203 },
        "originalIndex": 2,
        "placeId": "ChIJfVFHrM0LkkYRBzUQos_jR5w",
      },
    ],
}

响应使用以下架构。

NearestRoadsResponse

字段 必填 类型 说明
可选 Array<SnappedPoint>

吸附点数组。有时,同一地点会包含多个具有不同 placeId 或位置的吸附点。

如需了解详情,请参阅 SnappedPoint。

SnappedPoint

字段 必填 类型 说明
required LatitudeLongitudeLiteral 如需了解详情,请参阅 LatitudeLongitudeLiteral。
required 字符串

地点的唯一标识符。Roads API 返回的所有地点 ID 都对应于路段。

可选 数值

一个整数,表示原始请求中的对应值。请求中的每个值都应映射到响应中的贴靠值。不过,如果您设置了 interpolate=true,或者您使用的是最近道路,则响应中包含的坐标可能会多于请求。插值不会有 originalIndex。这些值从 0 开始编制索引,因此 originalIndex 为 4 的点将是传递给路径参数的第 5 个纬度/经度的吸附值。Nearest Roads 点可能包含具有不同位置或 placeId 的单个坐标的多个点。

LatitudeLongitudeLiteral

一个对象,用于描述以十进制度表示的纬度和经度的特定位置。

字段 必填 类型 说明
required 数值

纬度(十进制度)

required 数值

经度(十进制度)