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

في ما يلي بعض النصائح لتحديد المشاكل الشائعة وحلّها.

لماذا نصف قطر الدقة كبير جدًا؟

إذا كانت استجابة تحديد الموقع الجغرافي تعرض قيمة عالية جدًا في حقل الدقة، قد تكون الخدمة تحدّد الموقع الجغرافي استنادًا إلى عنوان IP للطلب بدلاً من نقاط اتصال Wi-Fi أو أبراج الاتصالات. يمكن أن تحدث هذه الأنواع من الاستجابات إذا لم تتعرّف الخدمة على أي أبراج اتصالات أو نقاط وصول.

للتأكّد من أنّ الخدمة لم تتمكّن من تحديد الموقع الجغرافي لنقاط الوصول، اضبط considerIp على "خطأ" في طلبك. إذا كانت الاستجابة هي 404، يعني ذلك أنّه تعذّر تحديد الموقع الجغرافي لعنصري wifiAccessPoints وcellTowers.

كيف يمكنني تحديد مشكلة في استجابة وحلّها؟

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

تحتوي استجابة الخطأ على عنصر يتضمّن عنصر خطأ واحدًا بالسمات التالية:

  • code: هذا الرمز هو نفسه رمز حالة HTTP للاستجابة.
  • message: وصف قصير للخطأ.
  • errors: قائمة بالأخطاء التي حدثت. يحتوي كل خطأ على معرّف لنوع الخطأ (السبب) ووصف قصير (الرسالة).

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

{
 "error": {
  "errors": [
   {
    "domain": "global",
    "reason": "parseError",
    "message": "Parse Error",
   }
  ],
  "code": 400,
  "message": "Parse Error"
 }
}

تجميع معلومات الاختبار من الأجهزة

لإجراء اختبار إضافي، يمكنك جمع معلومات من جهازك باستخدام خدمات الموقع الجغرافي المضمّنة التي توفّرها كل منصة:

أوصاف الأخطاء

في ما يلي الأخطاء المحتمَلة التي قد تواجهها مع أوصافها.

السبب النطاق رمز حالة HTTP الوصف
dailyLimitExceeded usageLimits 403 لقد تجاوزت الحدّ اليومي المسموح به .
keyInvalid usageLimits 400 مفتاح واجهة برمجة التطبيقات غير صالح لـ Geolocation API. احرص على تضمين المفتاح بالكامل، وعلى أن تكون قد اشتريت واجهة برمجة التطبيقات أو فعّلت الفوترة وواجهة برمجة التطبيقات للحصول على الحصة بدون أي تكلفة.
userRateLimitExceeded usageLimits 403 لقد تجاوزت الحدّ الأقصى للطلبات الذي ضبطته في Google Cloud Console. يتم عادةً ضبط هذا الحدّ الأقصى على أنّه عدد الطلبات في اليوم وعدد الطلبات كل 100 ثانية، وعدد الطلبات كل 100 ثانية لكل مستخدم. عليك ضبط الحدّ الأقصى لمنع مستخدم واحد أو مجموعة صغيرة من المستخدمين من استنفاد حصتك اليومية، مع السماح في الوقت نفسه لجميع المستخدمين بالوصول بشكل معقول. راجِع الحدّ الأقصى لاستخدام واجهة برمجة التطبيقات لضبط هذه الحدود.
notFound geolocation 404 كان الطلب صالحًا، ولكن لم يتم عرض أي نتائج.
parseError global 400 نص الطلب ليس JSON صالحًا. راجِع قسم نص الطلب للحصول على تفاصيل حول كل حقل.