รับเส้นทางขนส่งสาธารณะ

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

เส้นทางขนส่งจะแสดงวิธีการนำทางโดยใช้ตัวเลือกขนส่งสาธารณะที่มีในภูมิภาค ตัวเลือกการเดินทางอาจรวมถึง รถประจำทาง รถไฟใต้ดิน และรถไฟ เป็นต้น นอกจากนี้ เส้นทางการขนส่งสาธารณะยังมัก มีวิธีการเดินไปยังสถานีขนส่งสาธารณะ จากสถานีขนส่งสาธารณะ และระหว่าง สถานีขนส่งสาธารณะด้วย เนื่องจากโดยปกติแล้วเส้นทางขนส่งสาธารณะกำหนดให้คุณต้องเดินทางโดยใช้ การเดินทางมากกว่า 1 รูปแบบ วิธีขอเส้นทางและคำตอบบางส่วนจึงแตกต่างกัน

เส้นทางขนส่งสาธารณะแตกต่างจากเส้นทางอื่นๆ อย่างไร

เส้นทางขนส่งสาธารณะที่คุณขอโดยการตั้งค่าtravelModeของTRANSITจะแตกต่างจากเส้นทางที่ใช้ตัวเลือกโหมดการเดินทางอื่นๆ คุณไม่สามารถขอออบเจ็กต์และตัวเลือกเดียวกันทั้งหมดได้ และการตอบกลับ จะแสดงฟิลด์ที่แตกต่างกันเมื่อเทียบกับเส้นทางอื่นๆ

ใน Routes API ขั้นตอนจะเป็นคำสั่งนำทาง 1 รายการเสมอ สำหรับการเดินทางทุกประเภท ดังนั้นคำสั่งการนำทางแต่ละรายการจึงเป็น 1 ขั้นตอน คำตอบของเส้นทางขนส่งสาธารณะมีความคล้ายคลึงกับเส้นทางที่มีโหมดการเดินทางอื่นๆ มาก โดยมีข้อแตกต่างที่สำคัญบางประการดังนี้

ขอความแตกต่าง ความแตกต่างของการตอบกลับ
คุณระบุจุดแวะพักกลางทางไม่ได้ รวมถึงรายละเอียดการเดินทาง
ไม่สามารถรับเส้นทางที่เป็นมิตรต่อสิ่งแวดล้อม รวมถึงข้อมูลเมตาสำหรับโหมดการเดินทางแต่ละโหมดที่มีข้อมูลสรุปขั้นตอนสำหรับ โหมดการเดินทางนั้นๆ ใน stepsOverview (หากต้องการขอข้อมูลเมตานี้ ให้ใช้ stepsOverview ฟิลด์มาสก์)
ไม่สามารถระบุวิธีและระบุว่าจะรวมข้อมูลการเข้าชมหรือไม่
ไม่สามารถระบุฟีเจอร์เส้นทางที่ต้องการหลีกเลี่ยง
ระบุได้เฉพาะ transitPreferences ดูรายละเอียดได้ที่ TransitPreference

วิธีดูเส้นทางขนส่งสาธารณะ

  1. กำหนดต้นทางและปลายทาง
  2. ตั้งค่า travelMode เป็น TRANSIT
  3. เพิ่มมาสก์ฟิลด์ที่เหมาะสมเพื่อให้ได้คำตอบที่ต้องการ ดู ขอฟิลด์เส้นทางขนส่งสาธารณะที่ต้องการ
  4. หากจำเป็น ให้ตั้งค่าพารามิเตอร์ที่ไม่บังคับ ดูตั้งค่าพารามิเตอร์สำหรับเส้นทางขนส่งสาธารณะ

ขอฟิลด์เส้นทางการขนส่งสาธารณะที่ต้องการ

ขอฟิลด์เส้นทางขนส่งสาธารณะที่ต้องการโดยใช้มาสก์ฟิลด์ ตารางต่อไปนี้มี คำตอบที่แนะนำสำหรับเส้นทางการขนส่ง และฟิลด์มาสก์ที่จะใช้เพื่อขอคำตอบเหล่านั้น

วิธีขอข้อมูลนี้ ใช้ฟิลด์มาสก์นี้
รายละเอียดเส้นทางทั้งหมด *
รายละเอียดการขนส่งสาธารณะสำหรับช่วงของเส้นทาง legs
ค่าโดยสารโดยประมาณสำหรับแต่ละขั้นตอนของเส้นทาง และค่าโดยสารโดยประมาณที่แปลเป็นภาษาท้องถิ่น travelAdvisory
ข้อความที่แปลแล้วสำหรับระยะเวลาและระยะทาง localizedValues

ตั้งค่าพารามิเตอร์สำหรับเส้นทางขนส่งสาธารณะ

พารามิเตอร์ที่เกี่ยวข้องสำหรับเส้นทางขนส่งสาธารณะมีดังนี้

วิธีดำเนินการ ใช้พารามิเตอร์นี้ หมายเหตุ
เลือกโหมดการเดินทาง travelMode: "TRANSIT" ต้องระบุ ดูข้อมูลเพิ่มเติม
กำหนดเวลาถึงหรือเวลาออกเดินทาง arrivalTime: new Date(yyyy-mm-ddThh:mm:ssZ)

หรือ

departureTime: new Date(yyyy-mm-ddThh:mm:ssZ)
ไม่บังคับ คุณระบุเวลาถึงหรือเวลาออกเดินทางก็ได้ หากไม่ได้ระบุเวลาใดเวลาหนึ่ง departureTime จะใช้เวลาดำเนินการปัจจุบัน (now) เป็นค่าเริ่มต้น คุณจะตั้งเวลาถึงและเวลาออกเดินทางได้ภายในช่วงเวลาต่อไปนี้เท่านั้น โดยใช้เวลาดำเนินการปัจจุบัน (now) เป็นข้อมูลอ้างอิง
  • ไม่เกิน 7 วันก่อน now
  • ไม่เกิน 100 วันหลังจาก now
เวลาจะแสดงเป็นออบเจ็กต์ Date

หมายเหตุ: ตารางเวลาขนส่งมีการเปลี่ยนแปลงบ่อยครั้ง การเดินทางด้วยระบบขนส่งที่พร้อมให้บริการอาจ เปลี่ยนแปลงไปเรื่อยๆ และไม่มีการรับประกันว่าจะให้ผลลัพธ์ที่สอดคล้องกัน สำหรับการคาดการณ์ล่วงหน้าเป็นเวลานาน

รวมเส้นทางอื่น computeAlternativeRoutes: true ไม่บังคับ ตั้งค่าเป็น "จริง" เพื่อให้ computeRoutes คำนวณเส้นทางเพิ่มเติมได้สูงสุด 3 เส้นทาง เมื่อมี ดูข้อมูลเพิ่มเติม
ระบุค่ากำหนดสำหรับประเภทการขนส่ง transitPreference: {allowedTransitModes: ["BUS", "SUBWAY", "TRAIN", "LIGHT_RAIL", "RAIL"]}

หมายเหตุ: หากคุณระบุโหมดการเดินทางที่ต้องการ เส้นทางที่แสดงอาจยังคง ใช้โหมดการเดินทางอื่นๆ หรืออาจใช้เฉพาะโหมดการเดินทางอื่นๆ ทั้งนี้ขึ้นอยู่กับ ประสิทธิภาพของเส้นทางและโหมดการเดินทางที่ต้องการ

ไม่บังคับ ระบุรูปแบบการเดินทางด้วยขนส่งสาธารณะที่ต้องการ ดูข้อมูลเพิ่มเติม
ระบุค่ากำหนดสำหรับเส้นทางขนส่งสาธารณะ transitPreference: {routingPreference: "LESS_WALKING|FEWER_TRANSFERS"} ไม่บังคับ ระบุค่ากำหนดการกำหนดเส้นทางขนส่งสาธารณะ ดูข้อมูลเพิ่มเติม

ตัวอย่างคำขอ

ตัวอย่างต่อไปนี้แสดงวิธีขอเส้นทางขนส่งสาธารณะ

const request = {
  origin: 'Hunters Point San Francisco, CA 94124',
  destination: '201 Marine Dr, San Francisco, CA 94129',
  travelMode: 'TRANSIT',
  departureTime: new Date(),
  transitPreference: {
    allowedTransitModes: ['BUS', 'SUBWAY', 'TRAIN', 'LIGHT_RAIL', 'RAIL'],
    routingPreference: 'FEWER_TRANSFERS', // Alternatively, 'LESS_WALKING'.
  },
  fields: ['path', 'legs', 'travelAdvisory', 'localizedValues'],
};