Sobes.tech
Junior

Mis vahe on PUT ja POST päringutel?

sobes.tech AI

Vastus AI-lt

PUT kasutatakse ressurssi loomise või uuendamise jaoks määratud URI järgi. See on idempotentne, mis tähendab, et mitu sama päringut PUT-iga peaksid viima sama ressurssi staatust:

POST kasutatakse andmete saatmiseks serverile ning võib luua uue ressursi, uuendada olemasolevat või teha muid toiminguid. See ei ole idempotentne ning mitu sama POST-päringut võivad põhjustada mitme ressursi loomise või mitme toimingu teostamise.

Peamised erinevused:

Omadus PUT POST
Kasutamine Ressursi loomine/uuendamine URI järgi Andmete saatmine, ressursi loomine/uuendamine
Idempotentsus Jah Ei
URI Näitab sihtressurssi Näitab andmete töötlemise ressursi
Tulemus Ressursi asendamine/loomine URI järgi Serveri oleku muutmine

Näide PUT kasutamisest (kasutaja loomine või uuendamine ID 1-ga):

// Oletame, et meil on kasutaja andmete objekt
const userData = {
  name: "Ivan",
  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('Viga:', error));

Näide POST kasutamisest (uue kasutaja loomine):

// Oletame, et meil on uue kasutaja andmete objekt
const newUser = {
  name: "Pēteris",
  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('Viga:', error));