Di chuyển sang lớp Ma trận tuyến đường

Nhà phát triển ở Khu vực kinh tế Châu Âu (EEA)

Lớp RouteMatrix thay thế cho Dịch vụ ma trận khoảng cách, API JavaScript của Maps (Cũ). Trang này giải thích sự khác biệt giữa dịch vụ Ma trận khoảng cách cũ và thư viện JavaScript mới, đồng thời cung cấp một số mã để so sánh.

Distance Matrix API (Cũ) so với lớp Route Matrix

Bảng sau đây so sánh các tham số yêu cầu cho Distance Matrix API (Phiên bản cũ) và lớp RouteMatrix.

Dịch vụ ma trận khoảng cách, API Maps JavaScript (Cũ) RouteMatrix Bắt buộc hoặc không bắt buộc
origins origins Bắt buộc
destinations destinations Bắt buộc
travelMode travelMode Không bắt buộc
transitOptions transitPreference Không bắt buộc
arrivalTime arrivalTime Không bắt buộc
drivingOptions departureTime, trafficModel Không bắt buộc
unitSystem units Không bắt buộc
avoidHighways, avoidTolls RouteModifiers Không bắt buộc

So sánh mã

Phần này so sánh hai đoạn mã tương tự nhau để minh hoạ sự khác biệt giữa Distance Matrix API (Phiên bản cũ) và lớp RouteMatrix mới. Các đoạn mã cho thấy mã cần thiết trên mỗi API tương ứng để đưa ra yêu cầu về đường đi và xem kết quả.

Distance Matrix API (Cũ)

Mã sau đây tạo một yêu cầu ma trận khoảng cách bằng Distance Matrix API (Phiên bản cũ).

// 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,
  );
});
    

Lớp Route Matrix

Mã sau đây đưa ra yêu cầu về ma trận khoảng cách bằng cách sử dụng lớp Route Matrix mới:

// 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,));