เลือกช่องที่จะแสดงผล
เมื่อขอเส้นทางหรือเมทริกซ์เส้นทาง คุณต้องใช้ฟิลด์มาสก์เพื่อระบุข้อมูลที่ควรแสดงผล ไม่มีรายการเริ่มต้นของช่องที่แสดงผล หากไม่ระบุฟิลด์มาสก์ เมธอดจะแสดงผลข้อผิดพลาด
การใช้ฟิลด์มาสก์ยังช่วยให้คุณไม่ขอ ข้อมูลที่ไม่จำเป็น ซึ่งจะช่วยลดเวลาในการตอบสนองและหลีกเลี่ยงการแสดงผลข้อมูลที่ระบบของคุณไม่ต้องการ
คุณระบุรายการช่องที่ต้องการในฟิลด์มาสก์การตอบกลับ จากนั้นส่งฟิลด์มาสก์การตอบกลับไปยังเมธอดใดเมธอดหนึ่งโดยใช้พารามิเตอร์ของ URL $fields หรือfields หรือโดยใช้ส่วนหัว HTTP หรือ gRPC X-Goog-FieldMask
ดูข้อมูลเพิ่มเติมเกี่ยวกับพารามิเตอร์ของ URL ได้ที่ พารามิเตอร์ระบบ
กำหนดฟิลด์มาสก์การตอบกลับ
ฟิลด์มาสก์การตอบกลับคือรายการที่คั่นด้วยคอมมาของเส้นทาง โดยแต่ละเส้นทางจะระบุช่องที่ไม่ซ้ำกันในข้อความการตอบกลับ เส้นทางจะเริ่มต้นจากข้อความการตอบกลับระดับบนสุดและใช้เส้นทางที่คั่นด้วยจุดไปยังช่องที่ระบุ
สร้างและระบุเส้นทางของช่องดังนี้
- ค้นหาช่องที่มีข้อมูลที่ต้องการ ดูรายละเอียดได้ที่การอ้างอิงช่อง
- กำหนดเส้นทางสำหรับช่องที่ต้องการและสร้างฟิลด์มาสก์สำหรับช่องเหล่านั้น: ดูรายละเอียดได้ที่ กำหนดฟิลด์มาสก์ที่ต้องการใช้
รวมฟิลด์มาสก์สำหรับช่องทั้งหมดที่ต้องการ โดยคั่นฟิลด์มาสก์ด้วยคอมมา ตัวอย่างเช่น หากต้องการขอ
distanceMetersสำหรับขาของเส้นทาง รวมถึงระยะเวลาสำหรับแต่ละขั้นของขาของเส้นทาง ให้ป้อนทั้ง 2 อย่างโดยคั่นด้วยคอมมาโดยไม่เว้นวรรค ดังนี้routes.legs.distanceMeters,routes.legs.steps.duration
ส่งฟิลด์มาสก์พร้อมกับคำขอ 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
- ฟิลด์มาสก์ Compute Route Matrix
- REST: ระบุช่องของ เนื้อหาการตอบกลับ ที่จะแสดงผล
- gRPC: ระบุช่องของ RouteMatrixElement ในการตอบกลับที่จะแสดงผล
กำหนดฟิลด์มาสก์ที่จะใช้
วิธีกำหนดช่องที่ต้องการใช้และสร้างฟิลด์มาสก์สำหรับช่องเหล่านั้นมีดังนี้
- ขอช่องทั้งหมด โดยใช้ฟิลด์มาสก์
* - ดูที่ลำดับชั้นของช่อง ในการตอบกลับสำหรับ ช่องที่ต้องการ
สร้างฟิลด์มาสก์ โดยใช้ลำดับชั้นของช่องที่แสดงในขั้นตอนก่อนหน้าด้วยรูปแบบต่อไปนี้
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