Sobes.tech
Middle

Խոսեք HTTP մեթոդների և նրանց իդեմպոտենտության մասին։

sobes.tech AI

Պատասխան AI-ից

HTTP մեթոդները որոշում են այն գործողությունը, որը հաճախորդը ցանկանում է կատարել ռեսուրսի վրա: Հիմնական մեթոդները՝

  • GET: Ռեսուրս ստանալ. Իդեմպոտենտ է (կրկնվող հարցումները չեն փոխում սերվերի վիճակը):
  • POST: Դատարկ տվյալներ ուղարկել մշակման համար (օրինակ՝ նոր ռեսուրս ստեղծել, ձևի տվյալներ ուղարկել): Սովորաբար, չի լինի իդեմպոտենտ:
  • PUT: Ստեղծել կամ թարմացնել ռեսուրսը նշված URI-ով: Իդեմպոտենտ է (կրկնվող հարցումը նույն տվյալներով կհանգեցնի նույն ռեսուրսի վիճակին):
  • DELETE: Հեռացնել ռեսուրսը նշված URI-ով: Իդեմպոտենտ է (առաջին հաջող հարցումից հետո, կրկնվող հարցումները չեն փոխի ռեսուրսի վիճակը, քանի որ այն արդեն հեռացվել է):
  • PATCH: Կիսատ փոփոխություն ռեսուրսի վրա: Սովորաբար, չի լինի իդեմպոտենտ:
  • HEAD: Ստանալ GET-ի պատասխանների գլխագրերը առանց պատասխան մարմնի: Իդեմպոտենտ է:
  • OPTIONS: Ստանալ ռեսուրսի համար աջակցվող մեթոդների ցանկը: Իդեմպոտենտ է:

Իդեմպոտենտությունը նշանակում է, որ նույն հարցումը բազմիցս կատարելը կհանգեցնի նույն վերջնական վիճակին, ինչպես մեկ անգամ կատարելը: Սա վերաբերում է միայն սերվերի կողմի կողմնակի ազդեցություններին: Սերվերի պատասխանները կարող են տարբեր լինել (օրինակ, առաջին DELETE հարցումը կարող է վերադարձնել 200 OK, իսկ հաջորդները — 404 Not Found):

Ներկայացված օրինակներ՝

  • POST-ով բազմիցս ավելացնել ապրանք զամբյուղում:
  • POST կամ PATCH-ով հաշվողչի ավելացում:

Իդեմպոտենտ գործողությունների օրինակներ՝

  • Բազմիցս տվյալներ ստանալ GET-ով:
  • Կատարվել կամ թարմացվել օգտվողը կոնկրետ ID-ով PUT-ով:
  • Հեռացնել օգտվողը կոնկրետ ID-ով DELETE-ով:

Իդեմպոտենտությունը կարևոր է, երբ անհրաժեշտ է կրկնակի ուղարկել հարցումները (օրինակ՝ ցանցային սխալների դեպքում): Սերվերը կարող է անվտանգ կերպով կրկնօրինակել իդեմպոտենտ հարցումը, առանց ցանկալի փոփոխությունների հասցնելու: