- Application Programming Interface
- Software consumidor <--> API <--> Software Provedor
- Software Restaurante <--> API do iFOOD <--> iFood
- Respresentational State Transfer
- Por que REST
-
- Separação entre cliente e servidor
-
- Escabilidade
-
- Independência de linguagem
-
- Mercado
- Cliente-servidor
- Stateless
- Cache
- Interface uniforme
- Sistema em camadas
- Código sobre demanda
- Cliente requisição -> Sevidor
-
<- reposta
-
[MÉDOTO] [URI] HTTP/[Versão]
[Cabeçalho]
[CORPO/PAYLOAD]
POST /produtos HTTP/1.1
Content-Type: application/json
aceept: application/json
{
"nome": "Nootbook i7",
"preco": 2100.0
}
HTTP/[Versão] [STATUS]
[Cabeçalho]
[CORPO]
HTTP/1.1 201 Created
Location: /produtos/331
Content/type: application/json
{
"codigo": 331,
"nome": "Notebook i7",
"preco": 2100.0
}
- Um único produto é um rescuro
-
- Singleton Resource
- Coleção de produtos é um recurso
-
- Collection Resource
- URI
-
- Uniform Resource Identifier
/listarProdutos (coleção de produtos) http://api.algamarket.com.br/listarProdutos
http://api.algamarket.com.br/produtos
/produtos/{codigo} (produto unico) http://api.algamarket.com.br/produtos/331