Sobes.tech
Junior

Qual é a diferença entre pedidos PUT e POST?

sobes.tech IA

Resposta da IA

PUT é utilizado para criar ou atualizar um recurso na URI especificada. É idempotente, o que significa que múltiplas requisições PUT iguais devem levar ao mesmo estado do recurso.

POST é utilizado para enviar dados ao servidor e pode criar um novo recurso, atualizar um existente ou realizar outra operação. Não é idempotente, e múltiplas requisições POST iguais podem levar à criação de vários recursos ou à execução de várias operações.

Principais diferenças:

Característica PUT POST
Uso Criar/atualizar na URI Enviar dados, criar/atualizar
Idempotência Sim Não
URI Indica o recurso alvo Indica o recurso para processar dados
Resultado Substituir/criar recurso na URI Alterar o estado do servidor

Exemplo de uso de PUT (criar ou atualizar um usuário com ID 1):

// Suponha que temos um objeto com dados do usuário
const userData = {
  name: "Иван",
  age: 30
};

fetch('/api/users/1', {
  method: 'PUT',
  headers: {
    'Content-Type': 'application/json'
  },
  body: JSON.stringify(userData)
})
.then(response => response.json())
.then(data => console.log(data))
.catch(error => console.error('Erro:', error));

Exemplo de uso de POST (criar um novo usuário):

// Suponha que temos um objeto com dados de um novo usuário
const newUser = {
  name: "Петр",
  age: 25
};

fetch('/api/users', {
  method: 'POST',
  headers: {
    'Content-Type': 'application/json'
  },
  body: JSON.stringify(newUser)
})
.then(response => response.json())
.then(data => console.log(data))
.catch(error => console.error('Erro:', error));