Ի՞նչ տարբերություն կա PUT և POST մեթոդների միջև: Ինչպե՞ս են նրանք վարվում նույն հարցումը կրկին ուղարկելու դեպքում: Ինչո՞վ է զբաղվում PATCH-ը։
sobes.tech AI
Պատասխան AI-ից
HTTP PUT և POST մեթոդները semantik և վարքագծով տարբեր են.
-
PUT — idempotent մեթոդ, որը օգտագործվում է նշված URL-ով ռեսուրսի ամբողջական թարմացման համար: Նույն PUT հարցումը կրկին ուղարկելը արդյունքին չի փոխի, քանի որ ռեսուրսը նույն տվյալներով կգրվի:
-
POST — ոչ-idempotent մեթոդ, սովորաբար օգտագործվում է նոր ռեսուրսներ ստեղծելու կամ գործողություններ կատարելու համար: POST հարցման կրկնակի ուղարկումը կարող է հանգեցնել կրկնօրինակների կամ գործողության կրկնման:
-
PATCH — օգտագործվում է ռեսուրսի մասային թարմացման համար, ուղարկելով միայն փոփոխված դաշտերը: Վերածննդի տարբերակով, որը փոխարինում է ամբողջ ռեսուրսին, PATCH-ը կիրառվում է առկա օբյեկտի վրա:
Օրինակ՝
PUT /users/123
{
"name": "Иван",
"age": 30
}
PATCH /users/123
{
"age": 31
}
POST /users
{
"name": "Иван",
"age": 30
}
Նույն տվյալներով PUT-ը կրկին ուղարկելը ռեսուրսը չի փոխի, POST-ը կստեղծի նոր օգտվող, իսկ PATCH-ը նորից թարմացնի տարիքը։