Capabilities API לשירותים מדור קודם בחבילה

באמצעות Capabilities API, האפליקציה יכולה לזהות הפסקות שירות והשבתות מתוזמנות של יכולות API ספציפיות. אתם יכולים להשתמש ב-API הזה כדי לצמצם את זמן ההשבתה באפליקציה שלכם. לשם כך, צריך לזהות מתי יכולת מסוימת לא זמינה ואז לעקוף אותה.

לדוגמה, אם אתם משתמשים ב-Images API כדי לשנות את הגודל של תמונות, אתם יכולים להשתמש ב-Capabilities API כדי לזהות מתי Images API לא זמין ולדלג על שינוי הגודל:

from google.appengine.api import capabilities

def StoreUploadedProfileImage(self):
    uploaded_image = self.request.get('img')
    # If the images API is unavailable, we'll just skip the resize.
    if capabilities.CapabilitySet('images').is_enabled():
        uploaded_image = images.resize(uploaded_image, 64, 64)
    store(uploaded_image)

שימוש ב-Capabilities API

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

יכולות נתמכות

בשלב הזה, ה-API תומך ביכולות הבאות:

יכולת ארגומנטים ל-CapabilitySet
זמינות של Blobstore "blobstore"
קריאות למאגר נתונים "datastore_v3"
כתיבה ב-Datastore "datastore_v3", ["write"]
זמינות שירות תמונות Google "images"
זמינות שירות האימייל "mail"
זמינות שירות Memcache "memcache"
זמינות של שירות Task Queue "taskqueue"
זמינות של שירות אחזור של כתובות אתרים "urlfetch"