- طلب HTTP
- نص الطلب
- نص الاستجابة
- RouteMatrixOrigin
- RouteMatrixDestination
- ExtraComputation
- RouteMatrixElementCondition
- LocalizedValues
تتلقّى هذه الدالة قائمة بالمصادر والوجهات وتُعرِض مصدرًا يتضمّن معلومات عن المسار لكل مجموعة من المصدر والوجهة.
ملاحظة: تتطلّب هذه الطريقة تحديد قناع حقل استجابة في الإدخال. يمكنك تقديم قناع حقل الاستجابة باستخدام مَعلمة عنوان 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://routes.googleapis.com/distanceMatrix/v2:computeRouteMatrix
يستخدِم عنوان URL بنية تحويل ترميز gRPC.
نص الطلب
يحتوي نص الطلب على بيانات بالبنية التالية:
تمثيل JSON |
---|
{ "origins": [ { object ( |
الحقول | |
---|---|
origins[] |
مطلوب. صفيف المصادر الذي يحدّد صفوف مصفوفة الاستجابة تنطبق عدة قيود على حجم عدد القيم الفريدة للمصادر والوجهات:
|
destinations[] |
مطلوب. صفيف الوجهات الذي يحدّد أعمدة مصفوفة الاستجابة |
travelMode |
اختياريّ. تحدِّد وسيلة النقل. |
routingPreference |
اختياريّ. تُحدِّد كيفية احتساب المسار. يحاول الخادم استخدام الإعدادات المفضّلة المحدّدة للتوجيه لاحتساب المسار. إذا أدّى خيار التوجيه المفضّل إلى حدوث خطأ أو وقت استجابة طويل جدًا، يتم عرض خطأ. لا يمكنك تحديد هذا الخيار إلا عندما يكون |
departureTime |
اختياريّ. وقت المغادرة في حال عدم ضبط هذه القيمة، سيتم ضبطها تلقائيًا على وقت تقديم الطلب. ملاحظة: لا يمكنك تحديد يستخدم معيار RFC 3339، حيث يكون الناتج الذي يتم إنشاؤه دائمًا مُعدَّلاً وفقًا لقاعدة Z ويستخدم 0 أو 3 أو 6 أو 9 أرقام عشرية. يتم أيضًا قبول العناصر غير "Z". أمثلة: |
arrivalTime |
اختياريّ. وقت الوصول ملاحظة: لا يمكن ضبط هذا الخيار إلا عند ضبط يستخدم معيار RFC 3339، حيث يكون الناتج الذي يتم إنشاؤه دائمًا مُعدَّلاً وفقًا لقاعدة Z ويستخدم 0 أو 3 أو 6 أو 9 أرقام عشرية. يتم أيضًا قبول العناصر غير "Z". أمثلة: |
languageCode |
اختياريّ. رمز اللغة وفق معيار BCP-47، مثل "en-US" أو "sr-Latn" لمزيد من المعلومات، يُرجى الاطّلاع على معرّف لغة Unicode. اطّلِع على اللغات المتاحة للاطّلاع على قائمة اللغات المتاحة. في حال عدم تقديم هذه القيمة، يتم استنتاج لغة العرض من الموقع الجغرافي للمصدر الأول. |
regionCode |
اختياريّ. رمز المنطقة، المحدّد كقيمة مكوّنة من حرفَين لنطاق المستوى الأعلى لرموز البلدان (ccTLD) لمزيد من المعلومات، يُرجى الاطّلاع على النطاقات ذات المستوى الأعلى التي يتم ترميزها حسب البلد. |
units |
اختياريّ. تُستخدَم لتحديد وحدات القياس لحقول العرض. |
extraComputations[] |
اختياريّ. قائمة بعمليات الحساب الإضافية التي يمكن استخدامها لإكمال الطلب ملاحظة: قد تؤدي هذه العمليات الحسابية الإضافية إلى عرض حقول إضافية في الاستجابة. يجب أيضًا تحديد هذه الحقول الإضافية في قناع الحقل ليتم عرضها في الاستجابة. |
trafficModel |
اختياريّ. تُحدِّد الافتراضات التي يجب استخدامها عند احتساب الوقت الذي يقضيه المستخدم في حركة المرور. يؤثر هذا الإعداد في القيمة المعروضة في حقل المدة في |
transitPreferences |
اختياريّ. تُحدِّد الإعدادات المفضّلة التي تؤثّر في المسار الذي يتم عرضه في |
نص الاستجابة
يحتوي على معلومات المسار المحسوبة لزوج من نقاط المصدر/الوجهة في واجهة برمجة التطبيقات v2.computeRouteMatrix. يمكن بث هذا النموذج إلى العميل.
إذا كانت الاستجابة ناجحة، سيحتوي نص الاستجابة على بيانات بالبنية التالية:
تمثيل JSON |
---|
{ "status": { object ( |
الحقول | |
---|---|
status |
رمز حالة الخطأ لهذا العنصر. |
condition |
يشير إلى ما إذا تم العثور على المسار أم لا. مستقلة عن الحالة |
distanceMeters |
مسافة التنقّل في المسار، بالمتر |
duration |
المدة الزمنية اللازمة للتنقّل في المسار إذا ضبطت القيمة المدة بالثواني مع ما يصل إلى تسعة أرقام كسور، وتنتهي بـ " |
staticDuration |
مدة التنقّل في المسار بدون مراعاة أحوال حركة المرور المدة بالثواني مع ما يصل إلى تسعة أرقام كسور، وتنتهي بـ " |
travelAdvisory |
معلومات إضافية حول المسار على سبيل المثال: معلومات القيود ومعلومات الرسوم |
fallbackInfo |
في بعض الحالات، عندما يتعذّر على الخادم احتساب المسار باستخدام الإعدادات المفضّلة المحدّدة لهذا الزوج المحدّد من نقطة المصدر/الوجهة، قد يعود إلى استخدام وضع احتساب مختلف. عند استخدام وضع النسخ الاحتياطي، يحتوي هذا الحقل على معلومات مفصّلة عن الردّ الاحتياطي. وإلّا، يتم إلغاء إعداد هذا الحقل. |
localizedValues |
تمثيلات نصية لسمات |
originIndex |
فهرس مستند إلى الصفر للأصل في الطلب |
destinationIndex |
فهرس يبدأ من الصفر للوجهة في الطلب |
RouteMatrixOrigin
مصدر واحد لطلب ComputeRouteMatrixRequest
تمثيل JSON |
---|
{ "waypoint": { object ( |
الحقول | |
---|---|
waypoint |
مطلوب. نقطة على مسار الرحلة |
routeModifiers |
اختياريّ. المُعدِّلات لكل مسار يستخدِم هذا كنقطة منشأ |
RouteMatrixDestination
وجهة واحدة لطلب ComputeRouteMatrix
تمثيل JSON |
---|
{
"waypoint": {
object ( |
الحقول | |
---|---|
waypoint |
مطلوب. نقطة الطريق المقصودة |
ExtraComputation
عمليات حسابية إضافية لإجراءها أثناء إكمال الطلب
عمليات التعداد | |
---|---|
EXTRA_COMPUTATION_UNSPECIFIED |
لم يتم استخدامها. لن تنجح الطلبات التي تحتوي على هذه القيمة. |
TOLLS |
معلومات الرسوم لعناصر المصفوفة |
RouteMatrixElementCondition
حالة المسار الذي يتم إرجاعه
عمليات التعداد | |
---|---|
ROUTE_MATRIX_ELEMENT_CONDITION_UNSPECIFIED |
لا يتم استخدامها إلا عندما تكون قيمة status للعنصر غير "حسن". |
ROUTE_EXISTS |
تم العثور على مسار وتم ملء المعلومات المقابلة للعنصر. |
ROUTE_NOT_FOUND |
تعذّر العثور على أي مسار. لن يتم ملء الحقول التي تحتوي على معلومات عن المسار، مثل distanceMeters أو duration ، في العنصر. |
LocalizedValues
تمثيلات نصية لسمات معيّنة
تمثيل JSON |
---|
{ "distance": { object ( |
الحقول | |
---|---|
distance |
المسافة المقطوعة معروضة في شكل نص. |
duration |
المدة معروضة في شكل نص مع مراعاة أحوال حركة المرور. ملاحظة: إذا لم يتم طلب معلومات عن عدد الزيارات، تكون هذه القيمة هي نفسها قيمة staticDuration. |
staticDuration |
يتم عرض المدة في شكل نصي بدون مراعاة ظروف حركة المرور. |
transitFare |
تعرفة النقل العام معروضة في شكل نص |