Frameworks modernos retornam options automaticamente 🫵
Você já viu alguma API completa assim? 😛
Frameworks modernos retornam options automaticamente 🫵
Você já viu alguma API completa assim? 😛
Indo além dos verbos comuns, O OPTIONS é um método HTTP utilizado para descobrir quais operações são permitidas em um recurso específico.
Exemplo:
Req: OPTIONS /clientes/1
Res: HTTP/1.1 200 OK
Allow: GET, PUT, DELETE, OPTIONS
Indo além dos verbos comuns, O OPTIONS é um método HTTP utilizado para descobrir quais operações são permitidas em um recurso específico.
Exemplo:
Req: OPTIONS /clientes/1
Res: HTTP/1.1 200 OK
Allow: GET, PUT, DELETE, OPTIONS
{
"id": 1,
"nome": "João",
"links": [
{ "rel": "atualizar", "method": "PUT", "href": "/clientes/1" },
{ "rel": "excluir", "method": "DELETE", "href": "/clientes/1" }
]
}
O recurso retorna links informando operações que você pode usar para interagir com o recurso.
{
"id": 1,
"nome": "João",
"links": [
{ "rel": "atualizar", "method": "PUT", "href": "/clientes/1" },
{ "rel": "excluir", "method": "DELETE", "href": "/clientes/1" }
]
}
O recurso retorna links informando operações que você pode usar para interagir com o recurso.
Nível em que poucas APIs chegam. Introduz o conceito de HATEOAS (Hypermedia as the Engine of Application State). Os recursos incluem links que indicam as operações disponíveis ou os próximos passos possíveis. Tornando-a autoexplicativa.
Nível em que poucas APIs chegam. Introduz o conceito de HATEOAS (Hypermedia as the Engine of Application State). Os recursos incluem links que indicam as operações disponíveis ou os próximos passos possíveis. Tornando-a autoexplicativa.
Uso dos verbos HTTP: GET, POST, PUT, DELETE, etc. Simplifica a semântica das operações:
GET /clientes → lista de clientes.
POST /clientes → Novo cliente.
PUT /clientes/1 → Atualiza o cliente com ID 1.
DELETE /clientes/1 → Exclui o cliente com ID 1.
Uso dos verbos HTTP: GET, POST, PUT, DELETE, etc. Simplifica a semântica das operações:
GET /clientes → lista de clientes.
POST /clientes → Novo cliente.
PUT /clientes/1 → Atualiza o cliente com ID 1.
DELETE /clientes/1 → Exclui o cliente com ID 1.
Neste nível, cada entidade (recurso) tem sua própria URL (URI): api/clientes, api/usuarios, etc. No entanto, a API ainda trafega tudo via POST.
Neste nível, cada entidade (recurso) tem sua própria URL (URI): api/clientes, api/usuarios, etc. No entanto, a API ainda trafega tudo via POST.
Aqui, a API apenas transporta dados via HTTP. Em uma API hipotética que tem somente uma URL (api/service) e transita todos os dados via HTTP POST, ela estaria no Nível 0.
Aqui, a API apenas transporta dados via HTTP. Em uma API hipotética que tem somente uma URL (api/service) e transita todos os dados via HTTP POST, ela estaria no Nível 0.