Migracja do klasy Route Matrix

Deweloperzy z Europejskiego Obszaru Gospodarczego (EOG)

Klasa RouteMatrix zastępuje usługę macierzy odległości w Maps JavaScript API (starszą). Na tej stronie znajdziesz wyjaśnienie różnic między starszą usługą macierzy odległości a nową biblioteką JavaScript oraz przykłady kodu do porównania.

Distance Matrix API (starsza wersja) a klasa Route Matrix

W tabeli poniżej porównaliśmy parametry żądania starszego interfejsu Distance Matrix API i klasy RouteMatrix.

Distance Matrix Service (starsza wersja) RouteMatrix

Wymagane parametry

origins origins
destinations destinations

Parametry opcjonalne

travelMode travelMode
transitOptions transitPreference
arrivalTime arrivalTime
drivingOptions departureTime, trafficModel
unitSystem units
avoidHighways, avoidTolls RouteModifiers

Porównanie kodu

W tej sekcji porównujemy 2 podobne fragmenty kodu, aby zilustrować różnice między starszym interfejsem Distance Matrix API a nową klasą RouteMatrix. Fragmenty kodu pokazują kod wymagany w poszczególnych interfejsach API do wysłania żądania dotyczącego wskazówek dojazdu i wyświetlenia wyników.

Directions API (starsza wersja)

Poniższy kod wysyła żądanie macierzy odległości za pomocą starszej wersji interfejsu 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,
  );
});
    

Klasa Route Matrix

Poniższy kod wysyła żądanie macierzy odległości za pomocą nowej klasy 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,));