API Capabilities pour les anciens services groupés
Restez organisé à l'aide des collections
Enregistrez et classez les contenus selon vos préférences.
Avec l'API Capabilities, votre application peut détecter les pannes et les temps d'arrêt planifiés pour des fonctionnalités d'API spécifiques. Vous pouvez utiliser cette API pour réduire les temps d'arrêt de votre application en détectant le moment où une fonctionnalité n'est pas disponible et en la désactivant. .
Par exemple, si vous passez par l'API Images pour redimensionner des images, vous pouvez utiliser l'API Capabilities pour détecter à quel moment l'API Images n'est pas disponible et ignorer le redimensionnement :
fromgoogle.appengine.apiimportcapabilitiesdefStoreUploadedProfileImage(self):uploaded_image=self.request.get('img')# If the images API is unavailable, we'll just skip the resize.ifcapabilities.CapabilitySet('images').is_enabled():uploaded_image=images.resize(uploaded_image,64,64)store(uploaded_image)
L'API Datastore fournit un wrapper de commodité pour les opérations de lecture et d'écriture dans le datastore. Bien que vous puissiez tester les fonctionnalités simplement en fournissant le nom de la fonctionnalité comme argument à CapabilitySet(), vous pouvez également utiliser les objets CapabilitySet de commodité db.READ_CAPABILITY et db.WRITE_CAPABILITY. L'exemple suivant montre comment procéder pour détecter la disponibilité des opérations d'écriture dans le datastore à l'aide d'un wrapper de commodité, et comment envoyer un message aux utilisateurs lors des temps d'arrêt :
fromgoogle.appengine.extimportdbdefRenderHTMLForm(self):ifnotdb.WRITE_CAPABILITY.is_enabled():# Datastore is in read-only mode.
Utiliser l'API Capabilities en Python 2
La classe CapabilitySet définit toutes les méthodes disponibles pour cette API. Vous pouvez nommer les fonctionnalités explicitement ou les déduire à partir des méthodes fournies par cette classe. Consultez ci-dessous la liste des services actuellement activés dans cette API.
Fonctionnalités proposées
L'API propose actuellement les fonctionnalités suivantes :
Capacité
Arguments pour CapabilitySet
Disponibilité du Blobstore
"blobstore"
Lectures dans le datastore
"datastore_v3"
Écritures Datastore
"datastore_v3", ["write"]
Disponibilité du service Images
"images"
Disponibilité du service Mail
"mail"
Disponibilité du service Memcache
"memcache"
Disponibilité du service Task Queue
"taskqueue"
Disponibilité du service URL Fetch
"urlfetch"
Sauf indication contraire, le contenu de cette page est régi par une licence Creative Commons Attribution 4.0, et les échantillons de code sont régis par une licence Apache 2.0. Pour en savoir plus, consultez les Règles du site Google Developers. Java est une marque déposée d'Oracle et/ou de ses sociétés affiliées.
Dernière mise à jour le 2025/09/04 (UTC).
[[["Facile à comprendre","easyToUnderstand","thumb-up"],["J'ai pu résoudre mon problème","solvedMyProblem","thumb-up"],["Autre","otherUp","thumb-up"]],[["Difficile à comprendre","hardToUnderstand","thumb-down"],["Informations ou exemple de code incorrects","incorrectInformationOrSampleCode","thumb-down"],["Il n'y a pas l'information/les exemples dont j'ai besoin","missingTheInformationSamplesINeed","thumb-down"],["Problème de traduction","translationIssue","thumb-down"],["Autre","otherDown","thumb-down"]],["Dernière mise à jour le 2025/09/04 (UTC)."],[[["\u003cp\u003eThe Capabilities API allows applications to detect outages and scheduled downtime for specific API capabilities, helping to reduce application downtime by bypassing unavailable features.\u003c/p\u003e\n"],["\u003cp\u003eThis API supports first-generation runtimes and can be utilized when upgrading to corresponding second-generation runtimes, with specific migration guidance for the App Engine Python 3 runtime.\u003c/p\u003e\n"],["\u003cp\u003eWhile \u003ccode\u003eis_enabled\u003c/code\u003e generally returns \u003ccode\u003etrue\u003c/code\u003e, the "Datastore writes" capability returns \u003ccode\u003efalse\u003c/code\u003e if Datastore is in read-only mode.\u003c/p\u003e\n"],["\u003cp\u003eThe API can be used by explicitly naming capabilities or by inferring them from the \u003ccode\u003eCapabilitySet\u003c/code\u003e class methods.\u003c/p\u003e\n"],["\u003cp\u003eThe API currently supports capabilities like blobstore, Datastore reads and writes, Images, Mail, Memcache, Task Queue, and URL Fetch services.\u003c/p\u003e\n"]]],[],null,["# Capabilities API for legacy bundled services\n\nWith the Capabilities API, your application can detect outages and scheduled\ndowntime for specific [API capabilities](#Supported_capabilities). You can use\nthis API to reduce downtime in your application by detecting when a capability\nis unavailable and then bypassing it. .\n| This API is supported for first-generation runtimes and can be used when [upgrading to corresponding second-generation runtimes](/appengine/docs/standard/\n| python3\n|\n| /services/access). If you are updating to the App Engine Python 3 runtime, refer to the [migration guide](/appengine/migration-center/standard/migrate-to-second-gen/python-differences) to learn about your migration options for legacy bundled services.\n| Every `is_enabled` request to this API always returns\n| `true` except for the \"Datastore writes\" capability, which\n| returns `false` if Datastore is in read-only\n| mode for your app.\n\nFor example, if you use the Images API to resize images, you can use the\nCapabilities API to detect when the Images API is unavailable and skip the\nresize: \n\n from google.appengine.api import capabilities\n\n def StoreUploadedProfileImage(self):\n uploaded_image = self.request.get('img')\n # If the images API is unavailable, we'll just skip the resize.\n if capabilities.CapabilitySet('images').is_enabled():\n uploaded_image = images.resize(uploaded_image, 64, 64)\n store(uploaded_image)\n\nThe Datastore API provides a convenience wrapper for the Datastore read and\nwrite capabilities. While you can test capabilities simply by supplying the\ncapability name as an argument to `CapabilitySet()`, in this case you can also\nuse the `db.READ_CAPABILITY` and `db.WRITE_CAPABILITY` convenience\n`CapabilitySet` objects. The following sample shows how to detect the\navailability of Datastore writes using a convenience wrapper and, during\ndowntime, provide a message to users: \n\n from google.appengine.ext import db\n\n def RenderHTMLForm(self):\n if not db.WRITE_CAPABILITY.is_enabled():\n # Datastore is in read-only mode.\n\nUsing the Capabilities API in Python 2\n--------------------------------------\n\nThe\n[CapabilitySet](/appengine/docs/legacy/standard/python/refdocs/google.appengine.api.capabilities#google.appengine.api.capabilities.CapabilitySet)\nclass defines all of the\navailable methods for this API. You can either name capabilities explicitly or\ninfer them from the methods provided by this class. See below for the\n[list of services](#Supported_capabilities) currently enabled in this API.\n\nSupported capabilities\n----------------------\n\nThe API currently supports the following capabilities:"]]