اختيار الحقول المراد إرجاعها

عند استدعاء الطريقة ComputeRoutes()، عليك تحديد الحقول التي تريد عرضها في الرد. يمكنك إجراء ذلك باستخدام قناع حقل استجابة، والذي تقدّمه مع مَعلمة عنوان URL ‏$fields أو fields، أو باستخدام عنوان HTTP/gRPC ‏X-Goog-FieldMask. لمزيد من المعلومات، يُرجى الاطّلاع على مَعلمات النظام.

قناع الحقل

قيمة قناع الحقل هي قائمة مسارات حقول مفصولة بفواصل. كل مسار حقل هو قائمة بأسماء الحقول مفصولة بنقاط تمثّل التسلسل الهرمي للرسالة. اسم الحقل هو إما مفتاح عنصر JSON أو اسم علامة حقل protobuf. يبدأ مسار الحقل بنوع رسالة الردّ من المستوى الأعلى، ويمكن أن يتبعه اختياريًا نقطة واحدة أو أكثر، ثم مستوى اسم الحقل التالي. بشكل عام، يتم إنشاء مسارات الحقول بالطريقة التالية:

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

قناع الحقل الخاص هو حرف البدل "*" الذي يختار جميع الحقول على مستوى الجذر.

أمثلة

يوضّح المثال التالي كيفية ضبط أقنعة الحقول لطريقة ComputeRoutes().

مثال 1

قناع الحقل لجميع الحقول المتاحة (للفحص اليدوي)

X-Goog-FieldMask: *

مثال 2

قناع الحقل الخاص بالمدة والمسافة والمضلّع على مستوى المسار (مثال على إعداد الإنتاج).

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

ننصح بعدم استخدام قناع حقل الردّ الذي يتضمّن حرف البدل (*)، أو تحديد قناع الحقل على المستوى الأعلى (المسارات) في مرحلة الإنتاج. اختيار الحقول التي تحتاجها فقط:

  • يسمح ذلك لخادمنا بحفظ دورات المعالجة، ما يتيح لنا عرض نتائجك بوقت استجابة أقل.

  • يضمن أداءً مستقرًا لوقت الاستجابة. قد نضيف المزيد من حقول الاستجابة في المستقبل، وقد تتطلّب هذه الحقول الجديدة وقتًا إضافيًا للمعالجة. في حال اختيار جميع الحقول، أو إذا اخترت جميع الحقول على المستوى الأعلى، قد ينخفض الأداء لأنّ أي حقل جديد نضيفه سيتم تضمينه تلقائيًا في ردّك.

  • يؤدي ذلك إلى حجم استجابة أصغر، ما يعني معدل نقل بيانات أعلى للشبكة.

لمزيد من المعلومات حول كيفية إنشاء مسارات الحقول، يُرجى الاطّلاع على field_mask.proto.