Mithilfe der Capabilities API kann Ihre Anwendung für bestimmte API-Funktionen Ausfälle und geplante Ausfallzeiten erkennen. Mit dieser API können Sie die Ausfallzeiten Ihrer Anwendung reduzieren, indem Sie erkennen, wann eine Funktion nicht verfügbar ist, und diese dann umgehen.
Falls Sie beispielsweise mit der Images API die Größe von Bildern ändern, können Sie mithilfe der Capabilities API erkennen, wann die Images API nicht verfügbar ist, und die Größenänderung überspringen:
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 verwenden
Die CapabilitySet-Klasse definiert alle verfügbaren Methoden für dieses API. Sie können Funktionen entweder explizit benennen oder aus den von dieser Klasse bereitgestellten Methoden ableiten. Im nächsten Abschnitt finden Sie eine Liste der Dienste, die derzeit in dieser API aktiviert sind.
Unterstützte Funktionen
Die API unterstützt zurzeit die folgenden Funktionen:
| Funktion | Argumente für CapabilitySet |
|---|---|
| Verfügbarkeit von Blobstore | "blobstore" |
| Datastore-Lesevorgänge | "datastore_v3" |
| Datastore-Schreibvorgänge | "datastore_v3", ["write"] |
| Verfügbarkeit des Images-Diensts | "images" |
| Verfügbarkeit des Mail-Diensts | "mail" |
| Verfügbarkeit des Memcache-Diensts | "memcache" |
| Verfügbarkeit des Aufgabenwarteschlangendiensts | "taskqueue" |
| Verfügbarkeit des URL-Abrufdiensts | "urlfetch" |