迁移到 Route Matrix 类

欧洲经济区 (EEA) 开发者

RouteMatrix 类取代了 Maps JavaScript API(旧版)的距离矩阵服务。本页介绍了旧版距离矩阵服务与新的 JavaScript 库之间的区别,并提供了一些代码以供比较。

Distance Matrix API(旧版)与 Route Matrix 类

下表比较了旧版 Distance Matrix APIRouteMatrix 类的请求参数。

距离矩阵服务(旧版) RouteMatrix

必需参数

origins origins
destinations destinations

可选参数

travelMode travelMode
transitOptions transitPreference
arrivalTime arrivalTime
drivingOptions departureTimetrafficModel
unitSystem units
avoidHighwaysavoidTolls RouteModifiers

���码比较

本部分将比较两段类似的代码,以说明旧版 Distance Matrix API 与新版 RouteMatrix 类之间的区别。以下代码段展示了在每个相应 API 上发出路线请求并查看结果所需的代码。

Directions API(旧版)

以下代码使用旧版 Distance Matrix API 发出距离矩阵请求。

// Define the request.
const request = {
  origins: [{lat: 55.93, lng: -3.118}, 'Greenwich, England'],
  destinations: ['Stockholm, Sweden', {lat: 50.087, lng: 14.421}],
  travelMode: 'DRIVING',
  drivingOptions: {
    departureTime: new Date(Date.now()),
    trafficModel: 'optimistic'
  }
};

// Make the request.
service.getDistanceMatrix(request).then((response) => {
  // Display the response.
  document.getElementById("response").textContent = JSON.stringify(
    response,
    null,
    2,
  );
});
    

路线矩阵类

以下代码使用新的 Route Matrix 类发出距离矩阵请求:

// Define the request.
const request = {
  origins: [{lat: 55.93, lng: -3.118}, 'Greenwich, England'],
  destinations: ['Stockholm, Sweden', {lat: 50.087, lng: 14.421}],
  travelMode: 'DRIVING',
  departureTime: new Date(),
  trafficModel: 'optimistic'
};

// Make the request.
const response = await RouteMatrix.computeRouteMatrix(request);

// Display the response.
document.getElementById("response").setValue(JSON.stringify(response, null, 2,));