في ما يلي بعض النصائح حول تحديد المشاكل الشائعة وحلّها.
لماذا نصف قطر الدقة كبير جدًا؟
إذا كانت استجابة Geolocation تعرض قيمة عالية جدًا في حقل الدقة، قد تكون الخدمة تحدد الموقع الجغرافي استنادًا إلى عنوان IP للطلب، بدلاً من نقاط Wi-Fi أو أبراج الاتصالات. قد تظهر هذه الأنواع من الردود إذا لم تتعرّف الخدمة على أي أبراج اتصالات أو نقاط وصول.
للتأكّد من أنّ الخدمة لم تتمكّن من تحديد الموقع الجغرافي لنقاط الوصول، اضبط قيمة المَعلمة considerIp على false في طلبك. إذا كانت الاستجابة هي 404، يعني ذلك أنّك
تأكّدت من أنّه لا يمكن تحديد الموقع الجغرافي لعناصر wifiAccessPoints وcellTowers.
كيف يمكنني تحديد المشاكل في خطأ الاستجابة وحلّها؟
إذا أدّى طلبك إلى حدوث خطأ، يعرض النظام نص استجابة خطأ بتنسيق عادي ويضبط رمز حالة HTTP على حالة خطأ.
يحتوي ردّ الخطأ على عنصر يتضمّن عنصر خطأ واحدًا مع المفاتيح التالية:
code: يتطابق هذا مع حالة HTTP للاستجابة.message: وصف موجز للخطأ-
errors: قائمة بالأخطاء التي حدثت يحتوي كل خطأ على معرّف لنوع الخطأ (السبب) ووصف قصير (الرسالة).
على سبيل المثال، يؤدي إرسال ملف JSON غير صالح إلى ظهور الخطأ التالي:
{
"error": {
"errors": [
{
"domain": "global",
"reason": "parseError",
"message": "Parse Error",
}
],
"code": 400,
"message": "Parse Error"
}
}
جمع معلومات الاختبار من الأجهزة
لإجراء اختبارات إضافية، يمكنك جمع المعلومات من جهازك باستخدام الخدمات المستندة إلى الموقع الجغرافي المضمّنة التي يوفّرها كل نظام أساسي:
أجهزة Android: استخدِم LocationManager أو واجهة برمجة تطبيقات موفِّر الموقع المدمج.
أجهزة iOS: يمكنك استخدام إطار عمل Core Location من Apple.
أوصاف الأخطاء
في ما يلي الأخطاء المحتملة التي قد تواجهها مع أوصافها.
| السبب | النطاق | رمز حالة HTTP | الوصف |
|---|---|---|---|
dailyLimitExceeded |
usageLimits |
403 | لقد تجاوزت الحدّ اليومي. |
keyInvalid |
usageLimits |
400 | مفتاح واجهة برمجة التطبيقات غير صالح لواجهة Geolocation API. تأكَّد من تضمين المفتاح بالكامل، ومن أنّك اشتريت واجهة برمجة التطبيقات أو فعّلت الفوترة وواجهة برمجة التطبيقات للحصول على الحصة بدون أي رسوم. |
userRateLimitExceeded |
usageLimits |
403 | لقد تجاوزت الحدّ الأقصى لعدد الطلبات الذي ضبطته في Google Cloud Console. يتم ضبط هذا الحدّ عادةً على أنّه عدد الطلبات في اليوم، وعدد الطلبات لكل 100 ثانية، وعدد الطلبات لكل 100 ثانية لكل مستخدم. يجب ضبط الحدّ الأقصى لمنع مستخدم واحد أو مجموعة صغيرة من المستخدمين من استنفاد حصتك اليومية، مع السماح لجميع المستخدمين بالوصول إلى المحتوى بشكل معقول. يُرجى الاطّلاع على تحديد الحد الأقصى لاستخدام واجهة برمجة التطبيقات لضبط هذه الحدود. |
notFound |
geolocation |
404 | كان الطلب صالحًا، ولكن لم يتم عرض أي نتائج. |
parseError |
global |
400 | نص الطلب ليس بتنسيق JSON صالح. يُرجى الرجوع إلى قسم نص الطلب للحصول على تفاصيل حول كل حقل. |