Una API es un servicio de llamada de procedimiento remoto (RPC) que proporciona métodos remotos accesibles para clientes externos. Cada API de backend consta de una clase de servicio de RPC que es una subclase de la clase ProtoRPC remote.Service
y uno o más métodos. Cuando defines un método, también debes definir Message
clases para las solicitudes que ingresan en ese método y las respuestas que muestra.
Una clase Message
realiza una función de asignación para que los datos entrantes se puedan extraer y suministrar al método de servicio o a la respuesta saliente de forma correcta.
Si una solicitud tiene argumentos de ruta de acceso o string de consulta, usa una clase ResourceContainer
para la asignación, en lugar de una clase simple Message
.
Por último, debes decorar la clase de servicio de API y los métodos de clase y definir clases Message
para las solicitudes y respuestas.
Crear la API
A continuación, se describe el procedimiento para decorar tu código a fin de crear una API implementada en una única clase. Si tienes una API multiclase, consulta Crear una API implementada con varias clases. Consulta Decoradores si deseas obtener más información sobre todos los decoradores disponibles.
Para crear una API:
Agrega las siguientes importaciones obligatorias:
Define una subclase de
remote.Service
y decórala con@endpoints.api
:No es necesario que el nombre de tu API y el nombre de tu clase de servicio sean los mismos. El número de versión se aplica a la versión de la API. El valor que ingreses se vuelve parte de la ruta en la URL de tu API. Para obtener más información sobre las versiones, consulta Administrar versiones de API.
Determina qué datos espera tu método de la solicitud y qué datos se mostrarán, y crea una clase
Message
para el cuerpo de la solicitud y el de la respuesta:Ten en cuenta que si no aparecen argumentos en el cuerpo de la solicitud, como en una solicitud
GET
, puedes omitir la claseMessage
para la solicitud y usar el valormessage_types.VoidMessage
.Si tu solicitud tiene argumentos de ruta de acceso o string de consulta, reemplaza la clase
Message
por unResourceContainer
apropiado.Para obtener información completa sobre cómo formar y usar las clases
Message
, consulta la documentación de las clasesMessage
de respuesta y solicitud de la RPC del protocolo de Google.Crea el método para tu API y decóralo con
@endpoints.method
:Si tu solicitud tiene datos de ruta de acceso o de string de consulta, reemplaza el tipo de mensaje de solicitud por un
ResourceContainer
apropiado.Agrega el código para entregar la API, como se describe en Crear un servidor web.