Migrer vers la classe Route Matrix

La classe RouteMatrix remplace le service Distance Matrix de l'API Maps JavaScript (ancienne version). Cette page explique les différences entre l'ancien service Distance Matrix et la nouvelle bibliothèque JavaScript, et fournit du code à des fins de comparaison.

API Distance Matrix (ancienne version) et classe Route Matrix (bêta)

Le tableau suivant compare les paramètres de requête de l'ancienne API Distance Matrix et de la classe RouteMatrix.

Service Distance Matrix (ancien) RouteMatrix (bêta)

Paramètres obligatoires

origins origins
destinations destinations

Paramètres facultatifs

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

Comparaison de code

Cette section compare deux extraits de code similaires pour illustrer les différences entre l'ancienne API Distance Matrix et la nouvelle classe RouteMatrix. Les extraits de code montrent le code requis sur chaque API respective pour effectuer une demande d'itinéraire et afficher les résultats.

API Directions (ancienne version)

Le code suivant envoie une requête Distance Matrix à l'aide de l'ancienne API Distance 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',
  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,
  );
});
    

Classe Route Matrix (bêta)

Le code suivant effectue une requête de matrice de distances à l'aide de la nouvelle classe RouteMatrix :

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