ריכזנו כאן כמה טיפים לפתרון בעיות נפוצות.
למה רדיוס הדיוק גדול מאוד?
אם הערך בשדה הדיוק בתגובה של מיקום גיאוגרפי גבוה מאוד, יכול להיות שהשירות מבצע זיהוי מיקום גיאוגרפי על סמך כתובת ה-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"
}
}
איסוף מידע על בדיקות מהמכשירים
לצורך בדיקה נוספת, אפשר לאסוף מידע מהמכשיר באמצעות ערכות ה-SDK וממשקי ה-API הבאים:
מכשירי Android: עוברים אל Places SDK ל-Android וAndroid Location APIs.
מכשירי iOS: עוברים אל Places SDK ל-iOS.
תיאורי שגיאות
ריכזנו כאן את השגיאות האפשריות שאתם עשויים להיתקל בהן עם תיאורים.
סיבה | דומיין | קוד מצב HTTP | תיאור |
---|---|---|---|
dailyLimitExceeded |
usageLimits |
403 | חרגתם מהמגבלה היומית. |
keyInvalid |
usageLimits |
400 | מפתח ה-API לא תקין ל-Geolocation API. חשוב לוודא שכללתם את המפתח כולו, ושרכשתם את ה-API או הפעלתם את החיוב והפעלתם את ה-API כדי לקבל את המכסה ללא תשלום. |
userRateLimitExceeded |
usageLimits |
403 | חרגתם ממגבלת הבקשות שהגדרתם במסוף Google Cloud. בדרך כלל המגבלה הזו מוגדרת כבקשות ליום, בקשות לכל 100 שניות ובקשות לכל 100 שניות לכל משתמש. מומלץ להגדיר את המגבלה כך למנוע מקבוצה קטנה או ממשתמש יחיד למצות את המכסה היומית, ועדיין לאפשר גישה סבירה לכל המשתמשים. במאמר הגדרת מכסות לשימוש ב-API מוסבר איך מגדירים את המגבלות האלה. |
notFound |
geolocation |
404 | הבקשה הייתה תקינה, אבל לא הוחזרו תוצאות. |
parseError |
global |
400 | תוכן הבקשה הוא לא JSON חוקי. פרטים על כל שדה מופיעים בקטע גוף הבקשה. |