Idempotência
Como tornar seguras as operações repetidas quando a rede falha no meio do pedido.
Uma operação é idempotente quando executá-la várias vezes tem o mesmo efeito que executá-la uma vez. Em APIs, isso garante que repetir um pedido não cobre, crie ou envie duas vezes.
Redes falham no meio do caminho, e clientes tentam de novo. Sem idempotência, cada nova tentativa de um pagamento é uma cobrança a mais.
GET,PUTeDELETEjá são idempotentes por definição;POSTnão é.- Uma chave de idempotência, enviada pelo cliente, identifica as repetições do mesmo pedido.
- A segunda chegada da mesma chave recebe a resposta guardada da primeira.
- Conferir "já existe?" antes de gravar não funciona com pedidos simultâneos.