טיפול בשגיאות

מפתחים באזור הכלכלי האירופי (EEA)

אחרי שליחת הבקשה, יכול להיות שתקבלו תשובה עם פרטים על השגיאה.

משבצות דו-ממדיות ותמונות Street View

ברשימה הבאה מפורטות השגיאות שבהן יכול להיות שתיתקלו כשמשתמשים ב-2D Tiles ובתמונות Street View.

רשימת שגיאות

ברשימה הבאה מפורטות השגיאות שיכולות להופיע כשמשתמשים ב-Map Tiles API.

required
בבקשה שלך חסר פרמטר של כתובת URL. שימו לב שהודעת השגיאה מציינת
איזה פרמטר חסר.
notFound, invalid

הערכים של x,‏ y או z הם מחוץ לטווח.

  • במשבצות מפה רגילות, רמת הזום המקסימלית תלויה במשבצת המפה הספציפית ובאפשרויות המפה שביקשתם.

  • במשבצות מפה רגילות, קואורדינטת ה-x צריכה להיות בטווח [0, (2^zoom)-1].

  • בקטעי מפה רגילים, קואורדינטת ה-y צריכה להיות בטווח [0, (2^(zoom-1))-1].

  • במשבצות של Street View, רמת הזום צריכה להיות בין אפס לחמש, כולל.

  • באריחי Street View, טווחי הקואורדינטות x ו-y זהים לטווחי הקואורדינטות של אריחי מפה רגילים, עד לזום ברמה חמש. בשלב הזה, הערכים המקסימליים הם imageHeight או imagewidth חלקי tileHeight או tileWidth.

forbidden:

סיבות אפשריות:

  • בבקשה חסר מפתח API תקין.

  • הודעה: Your request cannot be served. Please ensure the parameters and request type are valid for your account and region.

    משבצות לוויין דו-ממדיות לא זמינות בפרויקטים שמקושרים לחשבון לחיוב עם כתובת באזור הכלכלי האירופי (EEA). מידע נוסף זמין במאמר התאמות ב-Map Tiles API ללקוחות באזור הכלכלי האירופי.

expired
פג התוקף של הטוקן שלך ל-session. התוקף של טוקן סשן הוא שבועיים מזמן היצירה שלו. שימו לב: יכול להיות שיהיו שינויים במגבלות האלה ללא הודעה מוקדמת. אם אתם מקבלים את השגיאה הזו, אתם צריכים לקבל אסימון סשן חדש, כמו שמתואר במאמר שימוש באסימוני סשן.
badRequest

הבקשה שלך הייתה בעלת מבנה פגום. בין הסיבות הנפוצות לכך:

  • ציינת סוג מפה terrain בלי לכלול שכבת roadmap.

  • הוספתם מערך styles לסוג מפה שאינו מפת דרכים.

  • שלחתם ערך של קו רוחב/קו אורך, וגם מזהה פנורמה בבקשה למטא-נתונים של Street View.

quotaExceeded, rateLimitExceeded

האפליקציה חרגה מהמיכסה המותרת או ממספר השאילתות המותר לשנייה.

דוגמה לשגיאה

{
  "error": {
    "code": 403,
    "message": "The request is missing a valid API key.",
    "errors": [
      {
        "message": "The request is missing a valid API key.",
        "domain": "global",
        "reason": "forbidden"
      }
    ],
    "status": "PERMISSION_DENIED"
  }
}

ניסיון חוזר של בקשות

אם הבקשות נכשלות עם קודי השגיאה quotaExceeded ו-rateLimitExceeded, צריך לנסות לשלוח שוב את הבקשה באופן שלא יגרום להצפת השרתים של Google בבקשות פגומות או בכשלים נרחבים – כי לקוחות רבים מנסים לשלוח שוב בקשות ברצף מהיר. כלומר, צריך להשתמש בהשהיה מעריכית לפני ניסיון חוזר כשמנסים לשלוח שוב את הבקשות. השהיה מעריכית לפני ניסיון חוזר (exponential backoff) מאלצת אתכם לפזר את הבקשות לאורך זמן, כדי לתת לשרת זמן להתאושש.

לדוגמה, אם בקשה נכשלת, צריך לנסות שוב אחרי שנייה אחת. אבל אם גם הניסיון הזה נכשל, צריך לנסות שוב את הבקשה אחרי שתי שניות. אם גם הבקשה הזו נכשלת, צריך לנסות שוב אחרי ארבע שניות. כך למעשה, כדי להרחיק את הבקשות זו מזו, פשוט מכפילים את משך הזמן בין כל בקשה לבקשה.

3D Tiles

יכול להיות שלא תראו שגיאות מהשרת של Google כי אתם ניגשים למשבצות פוטו-ריאליסטיות דרך רכיב עיבוד, שאחראי לטיפול בשגיאות בשרת.

שגיאות ברינדור של משבצות

לדוגמה, בדרך כלל, רכיב ה-Renderer של CesiumJS נכשל בשקט כשמתרחשות שגיאות בשרת, מה שיכול לגרום לכל דבר, החל מקריסות ומסכים ריקים ועד לטעינה של משבצות ספציפיות.

הטכניקה שבה משתמשים כדי לנפות באגים בשגיאות שרת תלויה ברכיב העיבוד הספציפי שבו משתמשים. במעבדי רינדור מבוססי-דפדפן כמו CesiumJS, אפשר לבדוק את תנועת הרשת באמצעות כלים שמובנים ברוב הדפדפנים. לדוגמה, אפשר להשתמש בכלי הפיתוח ל-Chrome.

שגיאות נפוצות

הרשימה הבאה כוללת פרטים על השגיאות הנפוצות ביותר שבהן אתם עשויים להיתקל.

‫400: ארגומנט לא תקין
מפתחות API לא תקינים, פרמטרים של שאילתות, מזהים של משבצות או של ערכות משבצות, או טוקן של סשן שפג תוקפו.
‫400: ערך לא חוקי
חשוב לוודא שסוג המפה (mapType) שבו נעשתה הבקשה createSessionToken זהה לערך mapType שמשמש בנקודת הקצה של המשבצת הבאה. לדוגמה, אי אפשר להשתמש באסימון סשן של streetview כדי לבקש משבצת של roadmap.

‎403: Permission denied

סיבות אפשריות:

  • מפתח API חסר, חיבור SSL חסר או שמפתח ה-API לא נוסף לרשימת ההיתרים של 3D Tiles. כדי להוסיף אתכם לרשימת ההיתרים של הפונקציונליות של 3D Tiles ב-Map Tiles API, צריך לפנות אל תמיכת Google עם מזהה הפרויקט.

  • הודעה: Your request cannot be served. Please ensure the parameters and request type are valid for your account and region.

    אי אפשר להשתמש בטקסטורות תלת-ממדיות פוטוריאליסטיות בפרויקטים שמקושרים לחשבון לחיוב עם כתובת באזור הכלכלי האירופי (EEA). מידע נוסף זמין במאמר התאמות ב-Map Tiles API ללקוחות באזור הכלכלי האירופי.

‫429: יותר מדי בקשות
הגעת למכסה. כדי להגדיל את המכסה, צריך לפנות אל התמיכה של Google.