- طلب 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[] |
مطلوب. صفيف الوجهات الذي يحدّد أعمدة مصفوفة الاستجابة |
travel |
اختيارية: تحدِّد وسيلة النقل. |
routing |
اختيارية: تُحدِّد كيفية احتساب المسار. يحاول الخادم استخدام الإعدادات المفضّلة المحدّدة للتوجيه لاحتساب المسار. إذا أدّى خيار التوجيه المفضّل إلى حدوث خطأ أو وقت استجابة طويل جدًا، يتم عرض خطأ. لا يمكنك تحديد هذا الخيار إلا عندما يكون |
departure |
اختيارية: وقت المغادرة في حال عدم ضبط هذه القيمة، سيتم ضبطها تلقائيًا على الوقت الذي قدّمت فيه الطلب. ملاحظة: لا يمكنك تحديد يجب أن يكون طابعًا زمنيًا بالتنسيق RFC3339 UTC "Zulu" وبدقة تصل إلى نانوثانية وما يصل إلى تسعة أرقام كسور. أمثلة: |
arrival |
اختيارية: وقت الوصول ملاحظة: لا يمكن ضبط هذا الخيار إلا عند ضبط يجب أن يكون طابعًا زمنيًا بالتنسيق RFC3339 UTC "Zulu" وبدقة تصل إلى نانوثانية وما يصل إلى تسعة أرقام كسور. أمثلة: |
language |
اختيارية: رمز اللغة وفق المعيار BCP-47، مثل "en-US" أو "sr-Latn" لمزيد من المعلومات، يُرجى الاطّلاع على معرّف لغة Unicode. اطّلِع على اللغات المتاحة للاطّلاع على قائمة اللغات المتاحة. في حال عدم تقديم هذه القيمة، يتم استنتاج لغة العرض من الموقع الجغرافي للمصدر الأول. |
region |
اختيارية: رمز المنطقة، المحدّد كقيمة مكوّنة من حرفَين لنطاق المستوى الأعلى لرموز البلدان (ccTLD). لمزيد من المعلومات، يُرجى الاطّلاع على النطاقات ذات المستوى الأعلى التي يتم ترميزها حسب البلد. |
units |
اختيارية: تُستخدَم لتحديد وحدات القياس لحقول العرض. |
extra |
اختيارية: قائمة بعمليات حسابية إضافية يمكن استخدامها لإكمال الطلب ملاحظة: قد تؤدي هذه العمليات الحسابية الإضافية إلى عرض حقول إضافية في الاستجابة. يجب أيضًا تحديد هذه الحقول الإضافية في قناع الحقل ليتم عرضها في الاستجابة. |
traffic |
اختيارية: تُحدِّد الافتراضات التي يجب استخدامها عند احتساب الوقت الذي يقضيه المستخدم في حركة المرور. يؤثر هذا الإعداد في القيمة المعروضة في حقل المدة في |
transit |
اختيارية: تُحدِّد الإعدادات المفضّلة التي تؤثّر في المسار الذي يتم عرضه في |
نص الاستجابة
يحتوي على معلومات المسار المحسوبة لزوج من نقاط المصدر/الوجهة في واجهة برمجة التطبيقات v2.computeRouteMatrix. يمكن بث هذا الإجراء إلى العميل.
إذا كانت الاستجابة ناجحة، سيحتوي نص الاستجابة على بيانات بالبنية التالية:
تمثيل JSON |
---|
{ "status": { object ( |
الحقول | |
---|---|
status |
رمز حالة الخطأ لهذا العنصر. |
condition |
يشير إلى ما إذا تم العثور على المسار أم لا. مستقلة عن الحالة |
distance |
مسافة التنقّل في المسار، بالمتر |
duration |
المدة الزمنية اللازمة للتنقّل في المسار إذا ضبطت القيمة المدة بالثواني مع ما يصل إلى تسعة أرقام كسور، وتنتهي بـ " |
static |
مدة التنقّل في المسار بدون مراعاة أحوال حركة المرور المدة بالثواني مع ما يصل إلى تسعة أرقام كسور، وتنتهي بـ " |
travel |
معلومات إضافية حول المسار على سبيل المثال: معلومات القيود ومعلومات الرسوم |
fallback |
في بعض الحالات، عندما يتعذّر على الخادم احتساب المسار باستخدام الإعدادات المفضّلة المحدّدة لهذا الزوج المحدّد من نقطة المصدر/الوجهة، قد يعود إلى استخدام وضع احتساب مختلف. عند استخدام وضع النسخ الاحتياطي، يحتوي هذا الحقل على معلومات مفصّلة عن الردّ الاحتياطي. وإلّا، لن يتم ضبط هذا الحقل. |
localized |
تمثيلات نصية لسمات |
origin |
فهرس مستند إلى الصفر للمصدر في الطلب |
destination |
فهرس يبدأ من الصفر للوجهة في الطلب |
RouteMatrixOrigin
مصدر واحد لطلب ComputeRouteMatrixRequest
تمثيل JSON |
---|
{ "waypoint": { object ( |
الحقول | |
---|---|
waypoint |
مطلوب. نقطة على المسار لنقطة الانطلاق |
route |
اختيارية: المُعدِّلات لكل مسار يستخدِم هذا كنقطة منشأ |
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. |
static |
يتم عرض المدة في شكل نصي بدون مراعاة ظروف حركة المرور. |
transit |
تعرفة النقل العام معروضة في شكل نص |