Uma API é um serviço de chamada de procedimento remoto (RPC, na sigla em inglês) que fornece métodos remotos acessíveis a clientes externos. Cada API de back-end consiste em uma classe de serviço RPC que apresenta subclasses para a classe ProtoRPC remote.Service
e um ou mais métodos. Para definir um método, é preciso configurar também classes Message
nas solicitações que chegam e nas respostas retornadas por ele.
Uma classe Message
executa uma função de mapeamento para que os dados recebidos sejam extraídos e fornecidos corretamente ao método do serviço ou à resposta de saída.
Se uma solicitação tiver argumentos de string de consulta ou de caminho, use uma classe ResourceContainer
no mapeamento, em vez de uma classe Message
simples.
Por último, decore a classe do serviço da API e os métodos de classe, além de definir classes Message
nas solicitações e respostas.
Como criar a API
No procedimento a seguir, você vê como decorar o código para criar uma API implementada em uma única classe. Se você tiver uma API multiclasse, consulte Como criar uma API implementada com várias classes. Consulte Decoradores para informações detalhadas sobre todos os decoradores disponíveis.
Para criar uma API:
Adicione as seguintes importações obrigatórias:
Defina uma subclasse de
remote.Service
e decore-a com@endpoints.api
:O nome da API e da classe de serviço não precisam ser iguais. O número da versão aplica-se à versão da API. O valor inserido torna-se parte do caminho no URL para a API. Para mais informações sobre as versões, consulte Como gerenciar o controle de versões da API.
Determine os dados que o método espera da solicitação e os que serão retornados. Depois, crie uma classe
Message
para o corpo da solicitação e da resposta:Se nenhum argumento aparecer no corpo da solicitação como, por exemplo, em uma solicitação
GET
, será possível omitir a classeMessage
e simplesmente usar o valormessage_types.VoidMessage
.Se a solicitação tiver argumentos de string de consulta ou de caminho, substitua a classe
Message
com umResourceContainer
apropriado.Para informações completas sobre como formar e usar classes
Message
, consulte a documentação sobre classesMessage
de solicitação e resposta de RPC do protocolo do Google.Crie o método para a API e decore-o com
@endpoints.method
:Se a solicitação tiver dados de string de consulta ou de caminho, substitua o tipo de mensagem de solicitação por um
ResourceContainer
apropriado.Adicione o código para disponibilizar a API, conforme descrito em Como criar um servidor da Web.