تحديد المشاكل وحلّها

الأخطاء

في حال حدوث خطأ، سيتم عرض نص استجابة خطأ بتنسيق عادي وسيتم ضبط رمز حالة HTTP على حالة خطأ.

يحتوي الردّ على عنصر يتضمّن عنصرًا واحدًا من النوع error يتضمّن مفاتيح التالية:

  • code: هذه الحالة هي نفسها حالة HTTP للاستجابة.
  • message: وصف موجز للخطأ
  • status: رمز حالة يشير إلى طبيعة الخطأ

على سبيل المثال، سيؤدي إرسال مَعلمة placeId غير صالحة إلى عرض المحاولة التالية للخطأ:

{
  "error": {
    "code": 400,
    "message": "\"placeId\" value is malformed: \"aChIJqaknMTeuEmsRUYCD5Wd9ARM\"",
    "status": "INVALID_ARGUMENT"
  }
}

وتتضمن الأخطاء المحتملة ما يلي:

الرمز الحالة الرسالة تحديد المشاكل وحلّها
400 INVALID_ARGUMENT المفتاح الذي قدّمته غير صالح. مفتاح واجهة برمجة التطبيقات غير صالح أو لم يتم تضمينه في الطلب. يُرجى التأكّد من تضمين المفتاح بالكامل ومن تفعيل واجهة برمجة التطبيقات لهذا المفتاح.
400 INVALID_ARGUMENT "تحتوي المَعلمة \"path\" على قيمة غير صالحة: ☃" كان طلبك يتضمّن وسيطات غير صالحة. تشمل الأسباب الأكثر ترجيحًا لحدوث هذا الخطأ ما يلي:
  • هناك مشكلة في معلمة path.
    يُرجى التأكّد من توفّر نقطة واحدة على الأقل وأقل من 100 نقطة. يجب أن تكون كل نقطة زوجًا من الأرقام مفصولَين بفاصلة، مثل: 48.409114,-123.369158. يجب فصل النقاط بشرطة: "|".
  • تضمّن طلبك placeId غير صالح.
  • يتضمّن طلبك كلاً من placeId و path. يمكن تحديد إحدى هذه المَعلمات فقط لكل طلب.

لن يتم عرض هذا الخطأ إذا تم تمرير placeId لطريق لم تعُد موجودة أو لمكان ليس طريقًا.

403 PERMISSION_DENIED تم حظر الطلب غير المسجَّل. يُرجى الاشتراك باستخدام Google Developers Console. تم رفض الطلب لسبب واحد أو أكثر من الأسباب التالية:
  • مفتاح واجهة برمجة التطبيقات مفقود أو غير صالح.
  • لم يتم تفعيل ميزة الفوترة في حسابك.
  • تم تجاوز الحد الأقصى للاستخدام الذي فرضته على نفسك.
  • لم تعُد طريقة الدفع المقدَّمة صالحة (على سبيل المثال، انتهت صلاحية بطاقة ائتمان).

لاستخدام منتجات Google Maps Platform، يجب تفعيل ميزة الفوترة في حسابك، ويجب أن تتضمّن جميع الطلبات مفتاح واجهة برمجة تطبيقات صالحًا. لحلّ هذه المشكلة، يُرجى اتّباع الخطوات التالية:

404 NOT_FOUND يجب استخدام بروتوكول HTTPS لهذه الخدمة. تأكَّد من إرسال الطلبات إلى https://roads.googleapis.com/ وليس http://roads.googleapis.com/.
429 RESOURCE_EXHAUSTED تم تقييد الطلب بسبب بلوغ الحدود القصوى المسموح بها لطلبات المشروع. لقد تجاوزت الحدّ الأقصى للطلبات الذي ضبطته في Google Cloud Platform Console. يتم عادةً ضبط هذا الحدّ على أنّه عدد الطلبات في اليوم، وعدد الطلبات كل 100 ثانية، وعدد الطلبات كل 100 ثانية لكلّ مستخدم. يجب ضبط هذا الحدّ لمنع مجموعة واحدة أو صغيرة من المستخدِمين من استنفاد حصّتك اليومية، مع السماح بوصول معقول إلى جميع المستخدِمين. اطّلِع على وضع حدود لاستخدام واجهة برمجة التطبيقات لضبط هذه الحدود.

الرقود الأسي

عند تعذُّر إكمال الطلبات، يجب التأكّد من إعادة محاولة إكمالها باستخدام خوارزمية التراجع الدليلي. على سبيل المثال، إذا تعذّر تنفيذ طلب مرة واحدة، تتم إعادة المحاولة بعد ثانية واحدة، وإذا تعذّر تنفيذه مرة أخرى، تتم إعادة المحاولة بعد ثانيتين، ثم أربع ثوانٍ، وهكذا. يضمن ذلك عدم تعرّض خوادم Google لعدم توفّر الطلبات أو الأعطال على نطاق واسع، لأنّ العديد من العملاء يحاولون إعادة محاولة الطلبات بسرعة كبيرة.

الأسئلة الشائعة حول تحديد المشاكل وحلّها

مشاكل التنفيذ

ما هو معدّل تكرار أخذ عيّنات من موقع مركبتي الجغرافي؟
ننصح بأخذ لقطة كل ثانية واحدة إلى 10 ثوانٍ للحصول على نتائج عالية الجودة عند التقاط الصور أثناء التنقّل.
هل هناك حدّ أقصى لعدد النقاط التي يمكنني إرسالها لكلّ طلب بحث؟
نعم، يمكن أن يتضمّن طلب البحث 100 نقطة كحدّ أقصى.
ما هو مستوى الدقة الذي يجب استخدامه لتخزين قيم خط الطول/العرض المقتطعة؟
لضمان أن تتّبع المسارات الملتصقة الطرق في جميع مستويات التصغير، حتى عند أعلى مستوى تصغير، يجب تخزين أزواج خط العرض/خط الطول الملتصقة بدقة 7 خانات عشرية.
هل يمكنني استخدام خطوط متعددة مُشفَّرة لعرض المسارات المُثبَّتة؟
يتم تحديد الخطوط المتعددة المشفّرة بدقة 5 منازل عشرية فقط، مما يؤدي إلى خطأ يبلغ مترَين تقريبًا. وبالتالي، فإنّ الخطوط المتعددة المشفّرة غير مناسبة إذا كنت تريد أن تتّبع المسارات الملتصقة الطريق عند مستويات التكبير المرتفعة.

المشاكل الشائعة

لا يتمّ ربط بعض النقاط، أو هناك فجوات في المسارات المرتبطة. كيف يمكن تصحيح ذلك؟
  • إذا كنت تأخذ عينات من نقاطك على فترات زمنية، تأكَّد من أخذ عينات من النقاط على فترات زمنية أقصر (كل ثانية إلى 10 ثوانٍ). في حال استخدام فاصل زمني أطول (مثلاً 60 ثانية)، قد لا تتمكّن خوارزمية "الاقتراب من الطريق" من تحديد الطرق التي تم التنقّل عليها بدقة كافية.
  • إذا كنت تنقر يدويًا على خريطة لإنشاء نقاط، من السهل جدًا إنشاء مسارات تحتوي على نقاط قليلة أو نقاط متفرقة لا تتعامل خوارزمية التثبيت معها بشكل جيد. تعمل خوارزمية الالتقاط بشكل أفضل مع النقاط القريبة من بعضها. جرِّب الإصدار التجريبي من ميزة "الاقتران بالطرق" أو استخدِم أداة فحص الطرق لاختبار مسارات التنقّل.
لماذا تكون المسارات الملتصقة مسنّنة أو بعيدة قليلاً عن الطريق عند التكبير؟
  • هل يتم اقتطاع دقة أزواج خطوط الطول/خطوط العرض المقتطعة قبل عرضها؟ يؤدي تخزين أزواج خط العرض/خط الطول المقتطعة بدقة تبلغ أقل من 7 خانات عشرية إلى حدوث أخطاء في الدقة عند عرض المسار المقتطع على الخريطة.
  • هل تستخدم خطوطًا متعددة مرمّزة؟ تقتطع الخطوط المتعددة المشفّرة أزواج خطوط الطول/العرض إلى 5 أرقام عشرية، ما يؤدي إلى خطأ في عدة أمتار، ما يؤدي إلى ظهور خطوط متعرّجة أو منحرفة قليلاً عن الطريق عند مستويات التكبير العالية.

إذا لم تكن الحالة أيًا مما سبق، فربما تم تحديث مربعات الخرائط مؤخرًا، مما يتسبب في عدم تزامنها مع مؤشر الطرق المستخدم في الالتقاط. إذا كان عدد قليل من طلبات البحث فقط متأثرًا، من المرجّح أن يكون هذا هو السبب. بما أنّ "خرائط Google" يتم تعديلها بانتظام، قد يحدث ذلك أحيانًا، وقد يحدث بشكل متكرّر إذا كنت تطّلع بانتظام على المسارات القديمة على الخريطة (مثل المسارات التي تم التقاطها قبل عدة أسابيع). للحصول على أفضل تجربة مرئية، عليك إعادة ربط المسارات القديمة قبل عرضها على الخريطة مباشرةً، وذلك بهدف تقليل التناقضات بين مربّعات الخريطة وفهرس الطرق المستخدَم في الربط.

ما هي الأسباب المحتمَلة لظهور حدّ السرعة للطريق "س" بشكل غير صحيح؟
تأتي حدود السرعة من عدة مصادر تختلف في دقتها وتغطيتها. إذا لاحظت نمطًا، مثل أنّ حدود السرعة لنوع طريق معيّن أو في منطقة معيّنة غير صحيحة بشكلٍ متسق، يُرجى اتّباع الخطوات التالية لإعلامنا بذلك:
  1. افتح "خرائط Google" على الكمبيوتر المكتبي أو تطبيق "خرائط Google" لأجهزة Android.
  2. افتح القائمة الجانبية اليمنى.
  3. انقر على إرسال الملاحظات. ملاحظة: قد يُطلب منك تسجيل الدخول.
  4. اختَر تعديل الخريطة.
  5. اختَر جزء الطريق الذي تريد تعديله.
  6. اختَر التالي.
  7. في حقل "غير ذلك"، حدِّد أنّ حدّ السرعة غير صحيح لذلك الطريق.
  8. اختَر إرسال.
يمكنك أيضًا الإبلاغ عن مشاكل أخرى هنا (على سبيل المثال، إذا كان اسم الطريق غير صحيح أو تم رسمه بشكل غير صحيح أو كان مغلقًا أو خاصًا).
لماذا يقطع مساري المقطوعة زوايا بدلاً من اتباع الطريق؟
لحلّ هذه المشكلة، يُرجى التحقّق مما يلي:
  • تأكَّد من ضبط مَعلمة interpolate على true.
  • تحقَّق من أخذ عينات من نقاط البيانات الأصلية في فواصل زمنية متقاربة (كل ثانية إلى 10 ثوانٍ).
لماذا تظهر لي الكثير من أقسام الطرق في المسار المقطّع لطريق بدون تغييرات في حدود السرعة؟
عند ضبط المَعلمة interpolate على true، يعرض طلب البحث "الربط بالطريق" خطًا متعددًا يتّبع الطريق حول الزوايا والمنحنيات والدوارات. إذا كانت الطريق منحنية، يتم عرض عدة أقسام من الطريق حتى إذا لم يتغيّر حد السرعة، وذلك لإنشاء خط متعدّد يتّبع هندسة الطريق عن كثب.