Junior — Middle
Podes dar exemplos de requisições que não garantem a idempotência?
sobes.tech IA
Resposta da IA
A idempotência significa que chamar uma operação com os mesmos parâmetros não alterará o resultado após a primeira execução.
Exemplos de pedidos que não garantem a idempotência:
- Pedidos POST que criam novos recursos: cada chamada cria um novo objeto, por exemplo, criar um novo usuário.
- Pedidos que aumentam um contador: por exemplo,
incrementCounter()— chamar novamente aumentará o valor. - Pedidos que causam efeitos colaterais: enviar uma notificação, realizar uma transação de pagamento.
Exemplo de um pedido não idempotente na API REST:
POST /orders
{
"product_id": 123,
"quantity": 1
}
Cada chamada criará um novo pedido, portanto, uma solicitação repetida alterará o estado do sistema.