- طلب 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 |
اختياريّ. وقت المغادرة وإذا لم تضبط هذه القيمة، سيتمّ ضبط هذه القيمة تلقائيًا على الوقت الذي أجريت فيه الطلب. ملاحظة: يمكنك فقط تحديد طابع زمني بتنسيق RFC3339 UTC "Zulu" ، بدقة نانو ثانية وما يصل إلى تسعة أرقام كسرية. أمثلة: |
arrivalTime |
اختياريّ. وقت الوصول ملاحظة: لا يمكن الضبط إلا عند ضبط طابع زمني بتنسيق RFC3339 UTC "Zulu" ، بدقة نانو ثانية وما يصل إلى تسعة أرقام كسرية. أمثلة: |
languageCode |
اختياريّ. رمز اللغة BCP-47، مثل en-US أو sr-Latn لمزيد من المعلومات، يُرجى الاطّلاع على معرّف لغة Unicode. راجِع دعم اللغة للحصول على قائمة اللغات المتاحة. في حال عدم توفير هذه القيمة، يتم استنتاج لغة العرض من الموقع الجغرافي الأصلي. |
regionCode |
اختياريّ. تمثّل هذه السمة رمز المنطقة، ويتم تحديده كـ ccTLD ("نطاق المستوى الأعلى") الذي يتكوّن من حرفين. لمزيد من المعلومات، يُرجى الاطّلاع على نطاقات المستوى الأعلى لرمز البلد. |
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 |
يتم تمثيل سعر النقل العام في شكل نصي. |