ย้ายข้อมูลไปยังคลาสเมทริกซ์เส้นทาง

นักพัฒนาซอฟต์แวร์ในเขตเศรษฐกิจยุโรป (EEA)

คลาส RouteMatrix จะแทนที่บริการเมทริกซ์ระยะทาง, Maps JavaScript API (เดิม) หน้านี้จะอธิบายความแตกต่างระหว่างบริการเมทริกซ์ระยะทางเดิมกับไลบรารี JavaScript ใหม่ และแสดงโค้ดบางส่วนเพื่อเปรียบเทียบ

Distance Matrix API (เดิม) เทียบกับคลาส Route Matrix

ตารางต่อไปนี้เปรียบเทียบพารามิเตอร์คำขอสำหรับ Distance Matrix API (เดิม) เดิมกับคลาส RouteMatrix

บริการเมทริกซ์ระยะทาง, Maps JavaScript API (เดิม) RouteMatrix ต้องระบุหรือไม่บังคับ
origins origins ต้องระบุ
destinations destinations ต้องระบุ
travelMode travelMode ไม่บังคับ
transitOptions transitPreference ไม่บังคับ
arrivalTime arrivalTime ไม่บังคับ
drivingOptions departureTime trafficModel ไม่บังคับ
unitSystem units ไม่บังคับ
avoidHighways avoidTolls RouteModifiers ไม่บังคับ

การเปรียบเทียบโค้ด

ส่วนนี้จะเปรียบเทียบโค้ด 2 รายการที่คล้ายกันเพื่อแสดงความแตกต่างระหว่าง Distance Matrix API (เดิม) กับคลาส RouteMatrix ใหม่ ข้อมูลโค้ดแสดงโค้ดที่จำเป็นใน API แต่ละรายการเพื่อส่งคำขอเส้นทางและดูผลลัพธ์

Distance Matrix API (เดิม)

โค้ดต่อไปนี้จะส่งคำขอเมทริกซ์ระยะทางโดยใช้ 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,
  );
});
    

คลาส Route Matrix

โค้ดต่อไปนี้จะส่งคำขอเมทริกซ์ระยะทางโดยใช้คลาส 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,));