Method: computeRouteMatrix

تأخذ هذه الشبكة قائمة بالمصادر والوجهات وتعرض مصدر بيانات يحتوي على معلومات المسار لكل مجموعة من نقطة الانطلاق والوجهة.

ملاحظة: تتطلب هذه الطريقة تحديد قناع حقل الردّ في الإدخال. يمكنك توفير قناع حقل الاستجابة باستخدام مَعلمة عنوان URL $fields أو fields أو باستخدام عنوان HTTP/gRPC X-Goog-FieldMask (اطّلِع على عناوين وعناوين URL المتوفّرة. ويجب أن تكون القيمة هي قائمة بمسارات الحقول مفصولة بفواصل. راجِع هذه المستندات التفصيلية حول كيفية إنشاء مسارات الحقول.

على سبيل المثال، باستخدام هذه الطريقة:

  • كمامة الحقل لجميع الحقول المتاحة (للفحص اليدوي): X-Goog-FieldMask: *
  • قناع الحقل لمدد المسارات والمسافات وحالة العنصر والحالة ومؤشرات العناصر (مثال على إعداد الإنتاج): X-Goog-FieldMask: originIndex,destinationIndex,status,condition,distanceMeters,duration

من الضروري تضمين status في قناع الحقل، وإلا ستظهر جميع الرسائل على ما يرام. لا تنصح Google باستخدام قناع حقل الردّ بحرف البدل (*) للسبب التالي:

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

طلب HTTP

POST https://routespreferred.googleapis.com/v1alpha:computeRouteMatrix

يستخدِم عنوان URL بنية تحويل ترميز gRPC.

نص الطلب

يحتوي نص الطلب على بيانات بالبنية التالية:

تمثيل JSON
{
  "origins": [
    {
      object (RouteMatrixOrigin)
    }
  ],
  "destinations": [
    {
      object (RouteMatrixDestination)
    }
  ],
  "travelMode": enum (RouteTravelMode),
  "routingPreference": enum (RoutingPreference),
  "departureTime": string
}
الحقول
origins[]

object (RouteMatrixOrigin)

مطلوب. مصفوفة من الأصول، تحدّد صفوف مصفوفة الاستجابة. تنطبق عدة قيود على الحجم على عدد القيم الفريدة للمصادر والوجهات:

  • يجب ألا يزيد عدد العناصر (المصادر × الوجهات) عن 625 في أي حالة.
  • يجب ألا يكون عدد العناصر (المصادر × الوجهات) أكبر من 100 في حال ضبط التوجيه المفضّل على TRAFFIC_AWARE_OPTIMAL.
  • يجب ألا يزيد عدد نقاط الطريق (المصدر + الوجهات) المحدّدة على أنّها placeId عن 50.
destinations[]

object (RouteMatrixDestination)

مطلوب. مصفوفة للوجهات التي تحدد أعمدة مصفوفة الاستجابة.

travelMode

enum (RouteTravelMode)

اختياريّ. تحدّد هذه السمة وسيلة النقل.

routingPreference

enum (RoutingPreference)

اختياريّ. لتحديد كيفية حساب المسار. يحاول الخادم استخدام تفضيل التوجيه المحدد لاحتساب المسار. إذا أدى تفضيل التوجيه إلى خطأ أو وقت استجابة طويل للغاية، سيتم عرض خطأ. في المستقبل، قد نطبّق آلية احتياطية لاستخدام خيار مختلف عندما لا يقدّم الخيار المفضّل نتيجة صالحة. لا يمكنك تحديد هذا الخيار إلا إذا كانت قيمة travelMode هي DRIVE أو TWO_WHEELER، وإلّا يتعذّر تنفيذ الطلب.

departureTime

string (Timestamp format)

اختياريّ. وقت المغادرة وفي حال عدم ضبط هذه القيمة، سيتم ضبط هذه القيمة تلقائيًا على الوقت الذي قدّمت فيه الطلب. وفي حال ضبط هذه القيمة على وقت قد حدث بالفعل، سيتعذّر الطلب.

طابع زمني بتنسيق RFC3339 حسب التوقيت العالمي المنسَّق (UTC) "زولو" بدقة نانوثانية وما يصل إلى تسعة أرقام كسرية. أمثلة: "2014-10-02T15:01:23Z" و"2014-10-02T15:01:23.045123456Z".

نص الاستجابة

إذا كانت الاستجابة ناجحة، يحتوي نص الاستجابة على مثال RouteMatrixElement.

نطاقات التفويض

يجب توفير نطاق OAuth التالي:

  • https://www.googleapis.com/auth/maps-platform.routespreferred

لمزيد من المعلومات، يُرجى الاطِّلاع على نظرة عامة على OAuth 2.0.