遷移至 Route Matrix 類別

歐洲經濟區 (EEA) 開發人員

RouteMatrix 類別會取代 Maps JavaScript API (舊版) 的距離矩陣服務。本頁面說明舊版距離矩陣服務與新版 JavaScript 程式庫的差異,並提供一些程式碼供您比較。

Distance Matrix API (舊版) 與 Route Matrix 類別

下表比較舊版 Distance Matrix API (舊版) 和 RouteMatrix 類別的要求參數。

距離矩陣服務、Maps JavaScript API (舊版) RouteMatrix 必填或選填
origins origins 必填
destinations destinations 必填
travelMode travelMode 選擇性
transitOptions transitPreference 選用
arrivalTime arrivalTime 選用
drivingOptions departureTime,trafficModel 選用
unitSystem units 選用
avoidHighways,avoidTolls RouteModifiers 選用

程式碼比較

本節比較兩段類似的程式碼,說明 Distance Matrix API (舊版) 與新 RouteMatrix 類別之間的差異。程式碼片段會顯示各個 API 提出路線規劃要求及查看結果所需的程式碼。

Distance Matrix 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 類別

下列程式碼會使用新的 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,));