REST API
CLIENT
SERVER
desenvolvimento web i
API
REQUEST
Uma interface que utiliza requisições HTTP responsáveis pelas operações básicas necessárias para a manipulação dos dados.
É um "pedido" que um cliente realiza a nosso servidor. Esse pedido contém uma série de dados que são usados de acordo com o cliente.
o que é rest?
Significa Representational State Transfer que, em português, é “Transferência de Estado Representacional”.
REST não é um protocolo ou padrão, mas sim uma API e um conjunto de restrições de arquitetura.
NÍVEIS DE MATURIDADE
NÍVEL 0
NÍVEL 1
NÍVEL 3
NÍVEL 2
Pode ter 4 níveis de maturidade, desde uma forma mais simples e rápida, até uma arquitetura mais organizada e complexa.
NíVEL 0
Na API com nível mais baixo de maturidade encontramos apenas um verbo a ser utilizado como tipo de operação, o POST.
Todas as URLs criadas sendo elas para ações de obter dados, atualizar dados, inserir e deletar são chamadas usando o POST.
https://endpoint/users?action=listAção via query string
NíVEL 1
Nesse nível de maturidade as APIs se tornam mais organizadas. Uma URL é criada para cada recurso que será consumido.
Já podemos ter uma grande redução de problemas na arquitetura, porém nesse nível ainda é utilizado apenas um tipo de operação, o POST.
https://endpoint/users/work-daysAção via identificador (no plural)
NíVEL 2
Nesse nível de maturidade a mesma ideia deve ser utilizada com os verbos HTTP, eles devem ser suficientes para um CRUD.
“Introdução de verbos padrões para lidar com situações similares da mesma forma, removendo variações desnecessárias.”
Métodos (verbos) mais conhecidos: GET, POST, PUT, DELETE
NíVEL 2
POST
PUT
DELETE
GET
Criação de um novo recurso (Create).
Buscar dados de um ou vários recursos (Read).
Atualizar um recurso, por inteiro (Update).
Remover um recurso. (Delete)
NíVEL 3
Último nível de maturidade de uma API é atingido quando aplicamos nela o HATEOAS (Hypermedia as the Engine of Application State).
Uma API no nível 3 de maturidade fornece auto documentação, facilidade de entendimento e reaproveitamento.
{
"href": "https://endpoint/users/list-all"
"type" "GET"
}Retorno também trará todas as ações possíveis para este recurso
Obrigado!
Maurício salin
GABRiel Antonietti
henrique kellip
guilherme barbosa
CANOAS, 06 de dezembro de 2022
RefeRências
-
https://coodesh.com/blog/dicionario/o-que-e-rest/
-
https://www.astera.com/pt/type/blog/rest-api-definition/
-
https://www.programmers.com.br/blog/niveis-de-maturidade-de-uma-api-rest/
CANOAS, 06 de dezembro de 2022
Apresentação REST API
By Mauricio Salin
Apresentação REST API
- 103