Junior — Middle
Kas REST API-s PUT-päringut saab pidada korduvalt turvaliseks ilma ressursi olekut muutmata?
sobes.tech AI
Vastus AI-lt
REST API-s peetakse PUT meetodit idempotentseks, mis tähendab, et korduv PUT-kutse sama andmetega ei tohiks pärast esimest taotlust ressurssi seisundit muuta. Kui PUT-taotlus ei muuda ressursi seisundit (näiteks saadetakse sama andmetega, mis juba salvestatud), võib seda pidada korduvaks ohutuks idempotentsuse mõttes.
Kuid on oluline mõista, et PUT-i idempotentsus ei taga, et serveril ei esine kõrvaltoimeid (näiteks logimine või loendurid), kuid ressursi seisukohast ei tohiks korduv PUT põhjustada muudatusi.
Näide:
PUT /users/123
{
"name": "Иван",
"email": "ivan@example.com"
}
Kui seda taotlust saadetakse mitu korda sama andmetega, ei muutu kasutaja seisund pärast esimest taotlust.