Un'API è un servizio di chiamata di procedura remota (RPC) che fornisce metodi remoti accessibili a client esterni. Ogni API di backend è composta da una
che sottoclassi
ProtoRPC remote.Service
e
uno o più metodi. Quando definisci un metodo, devi anche definire
Message
corso
per le richieste in arrivo quel metodo e le risposte da esso restituite.
Una classe Message
esegue una funzione di mappatura in modo che i dati in entrata possano essere estrapolati e forniti correttamente al metodo del servizio o alla risposta in uscita.
Se una richiesta ha argomenti path o stringa di query, utilizza una classe
ResourceContainer
per la mappatura anziché una semplice classe Message
.
Infine, devi decorare la classe di servizio API e i metodi della classe e devi definire le classi Message
per le richieste e le risposte.
Creazione dell'API
La procedura seguente mostra come decorare il codice per creare un'API implementata in una singola classe. Se hai un'API con più classi, consulta Creazione di un'API implementata con più classi. Consulta: Decoratori per informazioni dettagliate su tutti i decorator disponibili.
Per creare un'API:
Aggiungi le seguenti importazioni obbligatorie:
Definisci una sottoclasse di
remote.Service
e decorala con@endpoints.api
:Tieni presente che il nome dell'API e il nome della classe di servizio non devono necessariamente essere uguali. Il numero di versione si applica alla versione dell'API. Il valore inserito diventa parte del percorso dell'URL dell'API. Per maggiori informazioni informazioni sulle versioni, consulta Gestione del controllo delle versioni dell'API.
Stabilisci quali dati il tuo metodo si aspetta dalla richiesta e quali sono restituito e crea un'istanza
Message
corso per il corpo della richiesta e il corpo della risposta:Tieni presente che se nel corpo della richiesta non vengono visualizzati argomenti, ad esempio in una richiesta
GET
, puoi omettere la classeMessage
per la richiesta e utilizzare semplicemente il valoremessage_types.VoidMessage
.Se la richiesta contiene argomenti relativi a percorso o stringa di query, sostituisci il tuo corso
Message
con unResourceContainer
Per informazioni complete sulla formazione e sull'utilizzo delle classi
Message
, consulta la documentazione per le classiMessage
di richiesta e risposta del protocollo RPC di Google.Crea il metodo per la tua API e decoralo con
@endpoints.method
:Se la richiesta contiene dati relativi a path o stringa di query, sostituisci il tipo di messaggio di richiesta con un valore
ResourceContainer
appropriato.Aggiungi il codice per pubblicare l'API, come descritto in Creazione di un server web.