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

เลือกช่องที่จะแสดงผล

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

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

คุณระบุรายการช่องที่ต้องการในมาสก์ช่องการตอบกลับ จากนั้นคุณจะส่งมาสก์ฟิลด์การตอบกลับไปยังเมธอดใดเมธอดหนึ่งโดยใช้พารามิเตอร์ของ URL $fields หรือ fields หรือโดยใช้ส่วนหัว HTTP หรือ gRPC X-Goog-FieldMask

ดูข้อมูลเพิ่มเติมเกี่ยวกับพารามิเตอร์ของ URL ได้ที่พารามิเตอร์ของระบบ

กำหนดฟิลด์มาสก์การตอบกลับ

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

สร้างและระบุเส้นทางของฟิลด์ดังนี้

  1. ค้นหาช่องที่มีข้อมูลที่คุณต้องการ โปรดดูรายละเอียดที่หัวข้อข้อมูลอ้างอิงฟิลด์
  2. กำหนดเส้นทางสำหรับช่องที่ต้องการและสร้างมาสก์ช่องสำหรับช่องเหล่านั้น: ดูรายละเอียดได้ที่หัวข้อกำหนดมาสก์ช่องที่ต้องการใช้
  3. รวมมาสก์ของช่องสำหรับช่องทั้งหมดที่คุณต้องการ โดยคั่นมาสก์ของช่องด้วยคอมมา ตัวอย่างเช่น หากต้องการขอ distanceMeters สำหรับช่วงเส้นทาง รวมถึงระยะเวลาสำหรับแต่ละขั้นตอนของช่วงเส้นทาง ให้ป้อนทั้ง 2 ค่าโดยคั่นด้วยคอมมาและไม่มีเว้นวรรค ดังนี้

    routes.legs.distanceMeters,routes.legs.steps.duration
  4. ส่งมาสก์ฟิลด์พร้อมกับคำขอ API ตัวอย่างเช่น ในคำขอ curl คุณจะต้องระบุมาสก์ฟิลด์ด้วย -H และ X-Goog-FieldMask ดังนี้

    -H X-Goog-FieldMask: routes.legs.distanceMeters,routes.legs.steps.duration
ดูตัวอย่างและรายละเอียดเพิ่มเติมได้ที่หัวข้อต่อไปนี้

การอ้างอิงฟิลด์

หากต้องการดูช่องที่คุณสามารถขอในคำตอบผ่านมาสก์ช่อง โปรดดูข้อมูลอ้างอิง Compute Routes หรือ Compute Route Matrix ของ Routes API ที่ลิงก์ไว้ในรายการต่อไปนี้ ระบุช่องในการเขียนแบบ Camel Case ตามที่แสดงในข้อมูลอ้างอิง เช่น routePreference

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

  • ฟิลด์มาสก์ของเส้นทางการประมวลผล
    • REST: ระบุฟิลด์ของออบเจ็กต์ Route ในการตอบกลับที่จะแสดงผล โดยมีคำนำหน้าเป็น routes. เช่น routes.distanceMeters
    • gRPC: ระบุฟิลด์ของออบเจ็กต์ Route ในการตอบกลับที่จะแสดงผล
  • มาสก์ฟิลด์ Compute Route Matrix

กำหนดมาสก์ของช่องที่จะใช้

วิธีระบุช่องที่ต้องการใช้และสร้างมาสก์ช่องสำหรับช่องเหล่านั้นมีดังนี้

  1. ขอฟิลด์ทั้งหมดโดยใช้มาสก์ฟิลด์เป็น *
  2. ดูลำดับชั้นของช่องในการตอบกลับสำหรับช่องที่ต้องการ
  3. สร้างมาสก์ฟิลด์โดยใช้ลําดับชั้นของฟิลด์ที่แสดงในขั้นตอนก่อนหน้า โดยใช้รูปแบบต่อไปนี้

    topLevelField[.secondLevelField][.thirdLevelField][...]

ตัวอย่างเช่น สำหรับคำตอบเพียงบางส่วนนี้จากเส้นทาง

"routes": [
    {
        "legs": [
            {  "steps": [
                    {"distanceMeters": 119},
                    {"distanceMeters": 41}  ]
            }
        ],
        "distanceMeters": 160
    }
]

หากต้องการแสดงเฉพาะช่อง distanceMeters สำหรับช่วงเส้นทาง ซึ่งก็คือ distanceMeters สุดท้ายในตัวอย่างก่อนหน้า มาสก์ฟิลด์จะเป็นดังนี้

routes.legs.distanceMeters

หากต้องการแสดงผลช่อง distanceMeters สำหรับแต่ละขั้นตอนของช่วงเส้นทางแทน ซึ่งก็คือ distanceMeters ใต้ steps ในตัวอย่างก่อนหน้า มาสก์ของช่องจะเป็นดังนี้

routes.legs.steps.distanceMeters

หากต้องการแสดงทั้ง 2 รายการ โดยมีผลลัพธ์ข้างต้น มาสก์ฟิลด์จะเป็นดังนี้

routes.legs.distanceMeters,routes.legs.steps.distanceMeters

ตัวอย่างเส้นทางฟิลด์มาสก์

ส่วนนี้มีตัวอย่างเพิ่มเติมเกี่ยวกับวิธีระบุเส้นทางฟิลด์เป็นส่วนหนึ่งของมาสก์ฟิลด์การตอบกลับในการเรียก REST และ gRPC

การเรียก REST ไปยัง computeRoutes

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

X-Goog-FieldMask: routes.distanceMeters,routes.duration

การเรียก REST ไปยัง computeRouteMatrix

สำหรับเมธอด REST computeRouteMatrix ที่ใช้ในการคำนวณเมทริกซ์เส้นทาง ให้ระบุในส่วนหัวเพื่อแสดงผล originIndex, destinationIndex และ duration สำหรับชุดค่าผสมของต้นทางและปลายทางแต่ละชุด ดังนี้

X-Goog-FieldMask: originIndex,destinationIndex,duration

การเรียก gRPC ไปยัง computeRoutes

สำหรับเมธอด gRPC computeRoutes ที่ใช้ในการคำนวณเส้นทาง ให้ตั้งค่าตัวแปรที่มีมาสก์ฟิลด์การตอบกลับเพื่อแสดงผลฟิลด์ distanceMeters, duration และเส้นประกอบที่เข้ารหัสของเส้นทางในการตอบกลับ จากนั้นคุณสามารถส่งตัวแปรนั้นไปยังคำขอได้ ดังนี้

const (
  fieldMask = "routes.distanceMeters,routes.duration,routes.polyline.encodedPolyline"
)

การเรียก gRPC ไปยัง computeRouteMatrix

สำหรับเมธอด gRPC computeRouteMatrix ที่ใช้ในการคำนวณเมทริกซ์เส้นทาง ให้ตั้งค่าตัวแปรที่มีมาสก์ฟิลด์การตอบกลับเพื่อระบุการแสดงผล originIndex, destinationIndex และ duration สำหรับต้นทางและปลายทางแต่ละคู่ จากนั้นคุณสามารถส่งตัวแปรนั้นไปยังคำขอได้ ดังนี้

const (
  fieldMask = "originIndex,destinationIndex,duration"
)

ข้อควรพิจารณาเกี่ยวกับเส้นทางของช่อง

รวมเฉพาะช่องที่คุณต้องการในการตอบกลับเพื่อแสดงเฉพาะช่องที่คุณต้องการเท่านั้น

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

ดูรายละเอียดเพิ่มเติมเกี่ยวกับการสร้างมาสก์ฟิลด์ได้ที่ field_mask.proto