O que é?

API REST é um conjunto de convenções e práticas que permitem a criação de interfaces de programação que podem ser acessadas por meio de protocolo HTTP. É um estilo arquitetônico usado para a criação de serviços web que são leves, escaláveis e fáceis de manter.

Princípios de uma API REST

  1. Cliente-Servidor: A arquitetura é dividida entre cliente e servidor, promovendo a separação de responsabilidades. O cliente é responsável por gerenciar a interface do usuário, enquanto o servidor cuida da lógica de negócios e do armazenamento de dados.
  2. Stateless (Sem Estado): Cada requisição do cliente para o servidor deve conter todas as informações necessárias para entender e processar a solicitação. O servidor não armazena nenhuma informação sobre o estado do cliente entre as requisições.
  3. Cacheability (Cacheabilidade): As respostas devem indicar se podem ou não ser armazenadas em cache, e por quanto tempo. Isso melhora o desempenho e a eficiência ao reduzir a carga no servidor.
  4. Interface Uniforme: A arquitetura REST depende de uma interface uniforme entre componentes, permitindo a comunicação independente do dispositivo ou plataforma. Isso é realizado através de:
  5. Sistema em Camadas: A arquitetura pode ser composta por várias camadas intermediárias, como proxies, gateways e firewalls, que ajudam a melhorar a escalabilidade e a segurança.
  6. Código Sob Demanda (Opcional): O servidor pode fornecer código executável ao cliente, como scripts JavaScript, que pode ser executado pelo cliente.

Métodos HTTP em API REST

GET /usuarios
POST /usuarios
Content-Type: application/json

{
	"nome": "DuH",
	"email": "[email protected]"
}
PUT /usuarios/1
Content-Type: application/json

{
	"nome": "DuH",
	"email": "[email protected]"
}
DELETE /usuario/1

Benefícios de APIs REST