- طلب 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
وجهة واحدة لطلب ComputeRouteMatrixRequest
| تمثيل 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 |
تمثّل هذه السمة أجرة النقل العام في شكل نص. |