تحسب هذه الوظيفة أفضل مسار استنادًا إلى مجموعة من نقاط التوقف والنقاط الوسيطة وهدف المسار. ويتم أيضًا عرض أسرع مسار وأقصر مسار كمسارات مرجعية.
ملاحظة: تتطلّب هذه الطريقة تحديد قناع حقل استجابة في الإدخال. يمكنك تقديم قناع حقل الاستجابة باستخدام مَعلمة عنوان URL $fields
أو fields
، أو باستخدام عنوان HTTP/gRPC X-Goog-FieldMask
(اطّلِع على مَعلمات عناوين URL والرءوس المتاحة). تكون القيمة عبارة عن قائمة مفصولة بفواصل لمسارات الحقول. راجِع هذه المستندات التفصيلية حول كيفية إنشاء مسارات الحقول.
على سبيل المثال، بهذه الطريقة:
- كمامة الحقل لجميع الحقول المتاحة (للفحص اليدوي):
X-Goog-FieldMask: *
- قناع الحقل للمسافات المسار والمدد والرمز المميز ومعلومات عن رسوم العبور:
X-Goog-FieldMask: routes.route.distanceMeters,routes.route.duration,routes.token,routes.route.travelAdvisory.tollInfo
لا تنصح Google باستخدام قناع حقل الردّ بحرف البدل (*
) أو تحديد قناع الحقل على المستوى الأعلى (routes
)، للسببَين التاليَين:
- يساعد اختيار الحقول التي تحتاج إليها فقط خادمنا في توفير دورات الحساب، ما يتيح لنا عرض النتيجة لك بوقت استجابة أقل.
- إنّ اختيار الحقول التي تحتاجها فقط في مهمة الإنتاج يضمن أداء وقت الاستجابة مستقرًا. قد نضيف المزيد من حقول الاستجابة في المستقبل، وقد تتطلب هذه الحقول الجديدة وقتًا إضافيًا في العمليات الحسابية. في حال اختيار جميع الحقول أو اختيار جميع الحقول في المستوى الأعلى، قد تواجه تراجعًا في الأداء بسبب تضمين أي حقل جديد نضيفه تلقائيًا في الردّ.
- يؤدي اختيار الحقول التي تحتاج إليها فقط إلى تقليل حجم الاستجابة، وبالتالي زيادة معدل نقل البيانات في الشبكة.
طلب HTTP
POST https://routespreferred.googleapis.com/v1:computeCustomRoutes
يستخدِم عنوان URL بنية تحويل ترميز gRPC.
نص الطلب
يحتوي نص الطلب على بيانات بالبنية التالية:
تمثيل JSON |
---|
{ "origin": { object ( |
الحقول | |
---|---|
origin |
مطلوب. نقطة مسار الأصل. |
destination |
مطلوب. نقطة الطريق المقصودة |
intermediates[] |
اختياريّ. مجموعة من نقاط الطريق على طول المسار (باستثناء النقاط النهائية)، سواء للتوقف عند أو للمرور. يمكن إضافة ما يصل إلى 25 نقطة مسار وسيطة. |
travel |
اختياريّ. تحدِّد وسيلة النقل. يمكن استخدام |
routing |
اختياريّ. لتحديد كيفية حساب المسار. يحاول الخادم استخدام الإعدادات المفضّلة المحدّدة للتوجيه لاحتساب المسار. إذا أدى تفضيل التوجيه إلى حدوث خطأ أو وقت استجابة طويل جدًا، فسيتم عرض خطأ. لا يمكنك تحديد هذا الخيار إلا إذا كانت قيمة |
polyline |
اختياريّ. تُحدِّد الإعدادات المفضّلة لجودة الخط المتعدّد. |
polyline |
اختياريّ. تُحدِّد ترميزًا مفضّلاً للخط المتعدّد. |
departure |
اختياريّ. وقت المغادرة إذا لم يتم ضبط هذه القيمة، سيتم ضبط هذه القيمة تلقائيًا على الوقت الذي قدّمت فيه الطلب. إذا ضبطت هذه القيمة على وقت سبق أن حدث، سيتعذّر إكمال الطلب. يجب أن يكون طابعًا زمنيًا بالتنسيق RFC3339 UTC "Zulu" وبدقة تصل إلى نانوثانية وما يصل إلى تسعة أرقام كسور. أمثلة: |
route |
اختياريّ. يشير ذلك المصطلح إلى مجموعة من الشروط التي يجب استيفاؤها وتؤثّر في طريقة احتساب المسارات. |
route |
مطلوب. هدف مسار لتحسينه |
language |
اختياريّ. تمثّل هذه السمة رمز اللغة BCP-47، مثل en-US أو sr-Latn. لمزيد من المعلومات، يُرجى الاطّلاع على معرّف لغة Unicode. اطّلِع على اللغات المتاحة للاطّلاع على قائمة اللغات المتاحة. عند عدم تقديم هذه القيمة، يتم استنتاج لغة العرض من موقع طلب المسار. |
units |
اختياريّ. تحدّد هذه السمة وحدات القياس لحقول العرض. ويشمل ذلك الحقل |
نص الاستجابة
إذا كانت الاستجابة ناجحة، يحتوي نص الاستجابة على مثال ComputeCustomRoutesResponse
.
نطاقات التفويض
يجب توفير نطاق OAuth التالي:
https://www.googleapis.com/auth/maps-platform.routespreferred
لمزيد من المعلومات، يُرجى الاطّلاع على نظرة عامة على بروتوكول OAuth 2.0.