นักพัฒนาซอฟต์แวร์ในเขตเศรษฐกิจยุโรป (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
ดูตัวอย่างและรายละเอียดเพิ่มเติมได้ในส่วนต่อไปนี้

การอ้างอิงช่อง

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

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

  • ฟิลด์มาสก์ Compute Route
    • 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