Sobes.tech
Junior — Middle

Explique o que significa idempotência no contexto de pedidos HTTP POST

sobes.tech IA

Resposta da IA

A idempotência no contexto do HTTP significa que uma solicitação repetida ao mesmo recurso com os mesmos parâmetros não alterará o estado do servidor após a primeira solicitação. Para solicitações POST em HTTP, a idempotência não é garantida por padrão, pois o POST geralmente é usado para criar recursos e pode levar a resultados diferentes em chamadas repetidas (por exemplo, criar múltiplos registros).

No entanto, se o POST for implementado de forma que solicitações repetidas com os mesmos dados não alterem o estado (por exemplo, atualizar um recurso ou ignorar duplicados), então pode ser considerado idempotente. Ao contrário do POST, os métodos PUT, DELETE e GET, de acordo com o padrão, devem ser idempotentes.

Exemplo: se uma solicitação POST cria um novo pedido com um identificador único, uma solicitação repetida criará um novo pedido — não é idempotente. Se, por outro lado, o POST atualiza o status de um pedido por ID, uma solicitação repetida não alterará o resultado — é idempotente.