使用“旧”谷歌方向 API,我们有 directionsService 用于封装其余查询和 directionsRenderer 以向地图显示结果。
JavaScript 的方向 API 示例:
// 1. init route config
let route = {
origin: {
...
},
destination: {
...
},
...
}
// 2. link map to renderer
this.directionsRenderer.setMap(this.map);
// 3. make request
this.directionsService
.route(direction)
.then((response) => {
// 4. render route on map
this.directionsRenderer.setDirections(response);
})
至于新路线API:directionsService 可以用原始查询代码替换,但是“directionsRenderer”呢? 如何将响应['路线']应用到地图?
我在官方文档中看不到任何示例,也没有 JS 的客户端库。
Google Maps JavaScript API 目前不提供 Routes API service 或 renderer 来直接显示路线;似乎还没有,所以您可以提交功能请求。
目前,您需要从 JavaScript 或通过您自己的服务器查询 Routes API Web 服务端点(REST 或 gRPC)。最近在路由 API 文档中添加了一些示例:
为了方便从服务器应用程序查询路由 API,路由 API 客户端库可用于 Java、Go、Node.js、Python 和 .Net。
建议的方法是构建客户端应用程序,以便它们调用您自己的服务器,让您的服务器查询路由 API,并保护您的服务器,以便只允许您的应用程序查询它们(例如使用Firebase App Check) .
直接从用户可见的 JavaScript 代码查询路由 API 时,API 密钥应受到严格限制: