Migracja do klasy Route Matrix

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

Distance Matrix API (starsza wersja) a klasa Route Matrix (beta)

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

Usługa Distance Matrix (starsza wersja) RouteMatrix (Beta)

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 każdym interfejsie API, aby wysłać żądanie dotyczące wskazówek dojazdu i wyświetlić wyniki.

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 (beta)

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