Junior
HTTP-də HEAD, GET, POST və PUT metodları arasındakı fərqlər nədir?
sobes.tech Süni İntellekt
AI-dan cavab
- HEAD: Sorğu, GET metodu ilə alınacaq başlıqları tələb edir, lakin cavab gövdəsi olmadan. Resursun mövcudluğunu yoxlamaq və ya meta məlumatları əldə etmək üçün faydalıdır. İdempotent və təhlükəsiz.
- GET: Təyin olunmuş resursun görünüşünü tələb edir. Məlumatları çıxarmaq üçün istifadə olunur. İdempotent və təhlükəsiz.
- POST: Təyin olunmuş resurs üçün emal üçün məlumat göndərir. Məlumatlar sorğu gövdəsinə daxil edilir. Yeni resurs yaratmaq və ya forma məlumatlarını göndərmək üçün istifadə olunur. Təhlükəsiz deyil və idempotent deyil (təkrarlanan sorğular duplikatlar yarada bilər).
- PUT: Təyin olunmuş URI-də resursu yeniləmək və ya yaratmaq üçün məlumat göndərir. Əgər resurs mövcud deyilsə, server onu yarada bilər. Məlumatlar sorğu gövdəsinə daxil edilir. İdempotentdir (təkrarlanan sorğular ilk uğurlu sorğudan sonra server vəziyyətini dəyişmir). Təhlükəsiz deyil.
Əsas fərqlər:
| Metod | Məqsəd | Sorğu gövdəsi | Cavab gövdəsi (adətən) | İdempotent | Təhlükəsiz |
|---|---|---|---|---|---|
| HEAD | Başlıqları əldə et | Yox | Yox | Bəli | Bəli |
| GET | Resursu çıxar | Yox (adətən) | Bəli | Bəli | Bəli |
| POST | Məlumat göndər | Bəli | Bəli | Yox | Yox |
| PUT | Resursu yeniləyin/yaradın | Bəli | Bəli | Bəli | Yox |
Təhlükəsiz ifadəsi, sorğunun server vəziyyətini dəyişmədiyini göstərir. İdempotent ifadəsi, eyni sorğunun təkrarlanmasının serverdə eyni nəticəyə gətirib çıxardığını göstərir.