Endpoints são uma parte essencial dos processos empresariais e do desenvolvimento de aplicações em geral. Neste artigo, definimos o que são endpoints, porque precisamos deles e como criá-los na plataforma AppMaster.io.

O que é um endpoint?

Um endpoint é um gateway que liga os processos do servidor da aplicação com uma interface externa. Por outras palavras, este é o endereço para o qual os pedidos são enviados.

É importante mencionar como funciona a API para compreender o que são endpoints. API é uma abreviatura para uma interface de programação da aplicação. As aplicações utilizam APIs para interagir com serviços de terceiros e os seus utilizadores.

Para se ligar à API, é necessário enviar um pedido. Para o correcto processamento do pedido, o cliente deve fornecer um ponteiro de recurso universal (URL), um método HTTP e, dependendo do método, adicionar cabeçalhos, corpo, e parâmetros de pedido. Os cabeçalhos fornecem metadados sobre o pedido, enquanto o corpo contém dados, tais como campos para novas linhas na base de dados.

Endpoints in API: how it work

A API processará o pedido e enviará a resposta recebida do servidor. A resposta conterá um código de estado, que é uma parte da mensagem de resposta HTTP informando o cliente do resultado do pedido. Por exemplo, o código 200 é utilizado se a operação foi concluída com sucesso, 500 se ocorreu um erro interno do servidor.

Endpoints funcionam em conjunto com os métodos API. Estes são URLs específicos que a aplicação utiliza para comunicar com serviços de terceiros e os seus utilizadores. Um URL é uma rota que pode lidar com diferentes métodos de pedido. Cada tipo de pedido é um endpoint separado. Existem cinco tipos principais:

>ul><

  • LI>GET - obtém informação do servidor; não requer um corpo de pedido;

>li>POST - cria um novo objecto na base de dados, requer um corpo de pedido com os campos deste objecto;LI>PUT - reinicia completamente um objecto específico na base de dados;LI>PATCH - semelhante a PUT, reinicia um objecto específico na base de dados, mas apenas actualiza os campos que são mencionados no corpo de pedido;LI>DELETE - apaga o objecto da base de dados.

Ao criar um pedido específico, vários parâmetros podem ser adicionados ao mesmo. A combinação destes parâmetros e o URL representa um URI - Uniform Resource Identifier. Indica onde e como encontrar o recurso.

Endpoints e URL

Como pode configurar endpoints na plataforma AppMaster.io?

Na secção Endpoints da plataforma AppMaster.io, pode ver todos os endpoints gerados automaticamente e os endpoints do seu projecto. Se os ecrãs e páginas de auto-geração no seu projecto estiverem activados, serão automaticamente criados os pontos finais correspondentes para qualquer modelo de dados criado. Também, os pontos finais podem ser criados automaticamente ao instalar alguns módulos, por exemplo, Autorização (Auth), Países e cidades, e outros.

Endpoints in AppMaster.io

AppMaster.io permite trabalhar com vários tipos de APIs de endpoints:

>ul>

  • API para aceder ao backend a partir do cliente e de sistemas de terceiros;

li>li>webhooks para receber notificações de sistemas de terceiros;li>WebSockets, para abrir uma sessão de comunicação interactiva bidireccional entre um browser e um servidor sem pedir uma resposta ao server.

>>img src="https://cdn.appmaster.io/api/_files/EHNJTuQs9pG3DoFh63BFoZ/download/" title="Endpoint types in AppMaster.png" width="1600" height="348" alt="Endpoint types " data-mce-src="https://cdn.appmaster.io/api/_files/EHNJTuQs9pG3DoFh63BFoZ/download/">

todos os endpoints estão agrupados. Dentro de cada grupo, encontrará todos os pontos finais correspondentes, os seus tipos de pedido, URLs, e os processos de negócio a que estão ligados. Todos os parâmetros podem ser apagados e editados por si.

Ao criar ou editar um parâmetro, as seguintes opções estão disponíveis na janela de configuração:

  1. Método de pedido. GET, POST, PUT, DELETE, ou PATCH.
  2. Requisitar URL. A primeira parte com o caminho para o servidor não é especificada uma vez que é a mesma para todos os pontos finais da aplicação. É suficiente definir o fim, por exemplo, /utilizadores. O parâmetro URL também é especificado aqui. Suponhamos que o ponto final é concebido para receber informação sobre um utilizador específico. Nesse caso, o seu ID deve ser escrito após ":" (/users/:id) e passado como parâmetro.
  3. Endpoint groups. Este parâmetro visa organizar e estruturar o trabalho com os pontos terminais. Todos os pontos finais podem ser divididos em grupos (pastas).
  4. Processo empresarial. Um dos parâmetros mais críticos que determinam o que o ponto final irá fazer. Ao mesmo tempo, o ponto final em si pode permanecer inalterado. Receberá todos os mesmos pedidos no endereço antigo, e se o processo de negócio for substituído, desempenhará uma função diferente. Os processos de negócio para operações básicas de base de dados são criados automaticamente. Não os pode editar, mas se necessário, pode substituí-los por BPs.

>img src="https://cdn.appmaster.io/api/_files/5KyeKTeKPvhkAo6qpQL8iV/download/" title="Edit endpoint in AppMaster.png" width="1600" height="695" alt="Edit endpoint" data-mce-src="https://cdn.appmaster.io/api/_files/5KyeKTeKPvhkAo6qpQL8iV/download/">

p>Também, pode configurar middleware. O middleware é um software intermediário que serve de filtro ao processar pedidos de aplicações. O middleware é utilizado para verificar quaisquer condições antes de executar um pedido. Por exemplo, se criar middleware para verificar a autenticação do utilizador, o middleware redireccionará o utilizador para a página de login se o utilizador não estiver ligado. Se ele estiver logado, o middleware não interferirá no processamento do pedido, passando-o para o cliente.

Editing endpoint

Criar um endpoint em AppMaster.io

Vamos considerar a configuração de endpoints na prática e analisá-la através do exemplo do projecto Aviato. Pode encontrar o processo completo de criação deste projecto no curso AppMaster.io.

>p>Com o projecto, criámos dois processos de negócio:

>ul>>li>Validar e criar voos - o processo que será utilizado para substituir o processo de negócio Criar voo;>li>Registar passageiro - para registar um passageiro para um voo específico.>>p>>img src="https://cdn.appmaster.io/api/_files/KZPFsPa3DTD7MH6QhDaKth/download/" title="Business processes in AppMaster.png" width="1600" height="783" alt="Business processes example" data-mce-src="https://cdn.appmaster.io/api/_files/KZPFsPa3DTD7MH6QhDaKth/download/">

p>Agora podemos utilizar estes processos para estabelecer pontos finais no projecto.

p>Posamos começar com o processo Validar e criar voos de negócios. O grupo de voo já tem um ponto final POST/voos para a criação de um voo. Agora precisamos de substituir o processo de negócio anexado por um novo processo. Para tal, precisamos de Editar o ponto final.

Na janela de configuração, seleccionar o processo de negócio desejado. No nosso caso, este é um validar e criar o BP dos voos. Depois disso, precisamos de seleccionar todas as variáveis de entrada necessárias e guardar as alterações.

Business processes and endpoints

p>Agora podemos criar o próximo ponto final para o processo de registo de passageiros.

O nosso objectivo é criar uma secção para visualizar um voo e passageiros específicos a ele associados e criar um processo de registo de novos passageiros.

No grupo de pontos finais de voos, precisamos de criar um novo ponto final: /flights/:id/register, onde id se refere a um voo específico que podemos utilizar como entrada num processo de negócio.

Ao clicar no ícone Plus, podemos adicionar um novo endpoint. O método de pedido será POST, uma vez que estamos a criar um novo objecto. Seleccionamos o processo Register passenger para o nosso BP e guardamos todas as alterações feitas.

>img src="https://cdn.appmaster.io/api/_files/Ri4rUkXiKjbEnx7YmWQoSB/download/" title="New API endpoint in AppMaster" width="1600" height="697" alt="New API endpoint" data-mce-src="https://cdn.appmaster.io/api/_files/Ri4rUkXiKjbEnx7YmWQoSB/download/">

É assim tão fácil criar endpoints na plataforma AppMaster.io. Tutorial em vídeo completo:


Conclusion

Endpoints desempenham um papel vital no funcionamento do API, o qual, por sua vez, é necessário para a expansão de projectos e integração conveniente de serviços e aplicações. A plataforma sem código AppMaster.io facilita o trabalho com os endpoints, criando e configurando-os. É sempre possível registar-se na plataforma e verificar todas as funcionalidades.