تحسب هذه الوظيفة أفضل مسار استنادًا إلى مجموعة من نقاط التوقف والنقاط الوسيطة وهدف المسار. يعرض أيضًا أسرع مسار وأقصر مسار كمسارَين مرجعيَّين.
ملاحظة: تتطلّب هذه الطريقة تحديد قناع حقل استجابة في الإدخال. يمكنك تقديم قناع حقل الاستجابة باستخدام مَعلمة عنوان 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/v1alpha: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" للمزيد من المعلومات، يُرجى الاطّلاع على معرّف لغة يونيكود. يمكنك الانتقال إلى قسم دعم اللغات للاطّلاع على قائمة باللغات المتوافقة. عند عدم تقديم هذه القيمة، يتم استنتاج لغة العرض من موقع طلب المسار. |
units |
اختياريّ. تحدّد هذه السمة وحدات القياس لحقول العرض. ويشمل ذلك الحقل |
نص الاستجابة
إذا كانت الاستجابة ناجحة، يحتوي نص الاستجابة على مثال ComputeCustomRoutesResponse
.
نطاقات الأذونات
يجب توفير نطاق OAuth التالي:
https://www.googleapis.com/auth/maps-platform.routespreferred
لمزيد من المعلومات، يُرجى الاطِّلاع على نظرة عامة على OAuth 2.0.