DirectionsService 类
google.maps.DirectionsService
类
用于计算两个或多个位置之间路线的服务。
通过调用 const {DirectionsService} = await google.maps.importLibrary("routes")
进行访问。
请参阅 Maps JavaScript API 中的库。
构造函数 | |
---|---|
DirectionsService |
DirectionsService() 参数:无
创建 DirectionsService 的新实例,该实例可向 Google 服务器发送路线查询。 |
方法 | |
---|---|
route |
route(request[, callback]) 参数:
返回值:
Promise<DirectionsResult> 发出路线搜索请求。 |
DirectionsRequest 接口
google.maps.DirectionsRequest
接口
要发送到 DirectionsService
的路线查询。
属性 | |
---|---|
destination |
类型:
string|LatLng|Place|LatLngLiteral 目标位置。此参数可以指定为要进行地理编码的字符串、 LatLng 或 Place 。必填。 |
origin |
类型:
string|LatLng|Place|LatLngLiteral 原点的位置。此参数可以指定为要进行地理编码的字符串、 LatLng 或 Place 。必填。 |
travelMode |
类型:
TravelMode 请求的路线类型。必填。 |
avoidFerries optional |
类型:
boolean optional 如果值为 true ,则指示路线服务尽可能避开轮渡。可选。 |
avoidHighways optional |
类型:
boolean optional 如果值为 true ,则指示路线服务尽可能避开公路。可选。 |
avoidTolls optional |
类型:
boolean optional 如果值为 true ,则指示 Directions 服务尽可能避开收费路段。可选。 |
drivingOptions optional |
类型:
DrivingOptions optional 仅适用于 travelMode 为 DRIVING 的请求的设置。此对象对其他出行方式没有影响。 |
language optional |
类型:
string optional 一种语言标识符,用于指定应尽可能以哪种语言返回结果。请参阅支持的语言列表。 |
optimizeWaypoints optional |
类型:
boolean optional 如果设置为 true ,DirectionsService 将尝试重新排序提供的中间途经点,以最大限度地降低路线的总费用。如果航点经过优化,请检查响应中的 DirectionsRoute.waypoint_order 以确定新的顺序。 |
provideRouteAlternatives optional |
类型:
boolean optional 是否应提供备选路线。可选。 |
region optional |
类型:
string optional 用作地址解析请求偏向的区域代码。地区代码接受 ccTLD(“顶级域名”)双字符值。多数 ccTLD 代码都与 ISO 3166-1 代码相同,但也有一些需要注意的例外情况。例如,英国的 ccTLD 为“uk”( .co.uk ),而其 ISO 3166-1 代码为“gb”(从技术上讲,是指“大不列颠及北爱尔兰联合王国”这一实体)。 |
transitOptions optional |
类型:
TransitOptions optional 仅适用于 travelMode 为 TRANSIT 的请求的设置。此对象对其他出行方式没有影响。 |
unitSystem optional |
类型:
UnitSystem optional 默认值:出发地所在国家/地区的单位制。
显示距离时要使用的首选单位制。 |
waypoints optional |
类型:
Array<DirectionsWaypoint> optional 中间路标的数组。系统会计算从出发地到目的地(途经此数组中的每个途径点)的路线。如需了解允许的航点数量上限,请参阅 开发者指南。公交路线不支持途经点。可选。 |
DirectionsStatus 常量
google.maps.DirectionsStatus
常量
在完成对 route()
的调用后,DirectionsService
返回的状态。您可以通过值或使用常量的名称来指定这些参数。例如 'OK'
或 google.maps.DirectionsStatus.OK
。
通过调用 const {DirectionsStatus} = await google.maps.importLibrary("routes")
进行访问。
请参阅 Maps JavaScript API 中的库。
常量 | |
---|---|
INVALID_REQUEST |
提供的 DirectionsRequest 无效。 |
MAX_WAYPOINTS_EXCEEDED |
DirectionsRequest 中提供的 DirectionsWaypoint 过多。如需了解允许的航点数量上限,请参阅 开发者指南。 |
NOT_FOUND |
至少无法对原点、目标或路标之一进行地址解析。 |
OK |
响应包含有效的 DirectionsResult 。 |
OVER_QUERY_LIMIT |
网页发出请求的频率过高,超过了最短时间限制。 |
REQUEST_DENIED |
不允许网页使用路线服务。 |
UNKNOWN_ERROR |
由于服务器错误而无法处理路线请求。如果您再试一次,该请求可能会成功。 |
ZERO_RESULTS |
在起点和终点之间找不到任何路线。 |
DirectionsResult 接口
google.maps.DirectionsResult
接口
从路线服务器检索获得的路线响应。您可以使用 DirectionsRenderer
呈现这些对象,也可以自行解析并呈现此对象。您必须按照 Google Maps Platform 服务条款中的规定显示警告和版权声明。请注意,虽然此结果类似于 JSON,但它并非严格意义上的 JSON,因为它间接包含 LatLng
对象。
属性 | |
---|---|
request |
生成相应结果的 DirectionsRequest。 |
routes |
类型:
Array<DirectionsRoute> 一个 DirectionsRoute 数组,其中每个元素都包含有关相应路段及其所包含的步骤的信息。除非 DirectionsRequest 是在 provideRouteAlternatives 设置为 true 的情况下创建的,否则只会有一条路线。 |
available_travel_modes optional |
类型:
Array<TravelMode> optional 包含可用出行方式的数组。当请求指定出行方式但未获得任何结果时,系统会返回此字段。该数组包含给定航点组中相应国家/地区提供的出行方式。如果一个或多个途经点是“途经点”,则不会返回此字段。 |
geocoded_waypoints optional |
类型:
Array<DirectionsGeocodedWaypoint> optional 一个 DirectionsGeocodedWaypoint 数组,其中每个元素都包含有关出发地、目的地和航点的地理编码的信息。 |