کلاس RouteMatrix جایگزین سرویس Distance Matrix، Maps JavaScript API (Legacy) میشود. این صفحه تفاوتهای بین سرویس Distance Matrix قدیمی و کتابخانه جدید جاوا اسکریپت را توضیح میدهد و کدی برای مقایسه ارائه میدهد.
API ماتریس فاصله (Legacy) در مقابل کلاس ماتریس مسیر
جدول زیر پارامترهای درخواست برای API قدیمی Distance Matrix و کلاس RouteMatrix را مقایسه میکند.
| سرویس ماتریس فاصله (قدیمی) | RouteMatrix |
|---|---|
پارامترهای مورد نیاز | |
origins | origins |
destinations | destinations |
پارامترهای اختیاری | |
travelMode | travelMode |
transitOptions | transitPreference |
arrivalTime | arrivalTime |
drivingOptions | departureTime ، trafficModel |
unitSystem | units |
avoidHighways ، avoidTolls | RouteModifiers |
مقایسه کد
این بخش دو قطعه کد مشابه را مقایسه میکند تا تفاوتهای بین API قدیمی Distance Matrix و کلاس جدید RouteMatrix را نشان دهد. قطعه کدها، کد مورد نیاز در هر API مربوطه برای ایجاد درخواست مسیر و مشاهده نتایج را نشان میدهند.
API مسیرها (قدیمی)
کد زیر با استفاده از 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, ); });
کلاس ماتریس مسیر
کد زیر با استفاده از کلاس جدید 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,));