Python 2.7 ha raggiunto la fine del supporto
e verrà ritirato
il 31 gennaio 2026. Dopo il ritiro, non potrai eseguire il deployment di applicazioni Python 2.7, anche se la tua organizzazione ha utilizzato in precedenza un criterio dell'organizzazione per riattivare i deployment di runtime legacy. Le tue applicazioni Python 2.7 esistenti continueranno a essere eseguite e a ricevere traffico dopo la
data di ritiro. Ti consigliamo di eseguire la migrazione all'ultima versione supportata di Python.
Mantieni tutto organizzato con le raccolte
Salva e classifica i contenuti in base alle tue preferenze.
Con l'API Capabilities, la tua applicazione può rilevare interruzioni e tempi di inattività programmati per specifiche funzionalità dell'API. Puoi utilizzare questa API per ridurre i tempi di inattività della tua applicazione rilevando quando una funzionalità non è disponibile e poi bypassandola. .
Ad esempio, se utilizzi l'API Images per ridimensionare le immagini, puoi utilizzare l'API Capabilities per rilevare quando l'API Images non è disponibile e saltare il ridimensionamento:
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 fornisce un wrapper pratico per le funzionalità di lettura e scrittura di Datastore. Sebbene tu possa testare le funzionalità semplicemente specificando il nome della funzionalità come argomento di CapabilitySet(), in questo caso puoi anche utilizzare gli oggetti di utilità db.READ_CAPABILITY e db.WRITE_CAPABILITY.CapabilitySet L'esempio seguente mostra come rilevare la disponibilità delle scritture di Datastore utilizzando un wrapper di praticità e, durante il tempo di riposo, fornire un messaggio agli utenti:
fromgoogle.appengine.extimportdbdefRenderHTMLForm(self):ifnotdb.WRITE_CAPABILITY.is_enabled():# Datastore is in read-only mode.
Utilizzo dell'API Capabilities in Python 2
La classe
CapabilitySet
definisce tutti i metodi
disponibile per questa API. Puoi assegnare un nome alle funzionalità in modo esplicito o ricavarle dai metodi forniti da questa classe. Di seguito è riportato l'elenco dei servizi attualmente abilitati in questa API.
Funzionalità supportate
Al momento l'API supporta le seguenti funzionalità:
[[["Facile da capire","easyToUnderstand","thumb-up"],["Il problema è stato risolto","solvedMyProblem","thumb-up"],["Altra","otherUp","thumb-up"]],[["Difficile da capire","hardToUnderstand","thumb-down"],["Informazioni o codice di esempio errati","incorrectInformationOrSampleCode","thumb-down"],["Mancano le informazioni o gli esempi di cui ho bisogno","missingTheInformationSamplesINeed","thumb-down"],["Problema di traduzione","translationIssue","thumb-down"],["Altra","otherDown","thumb-down"]],["Ultimo aggiornamento 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:"]]