HTTP istek yöntemleri açıklaması
HTTP dokuz standart istek yöntemi tanımlar, ancak günlük trafiğin çoğu bunlardan yalnızca birkaçını kullanır. Bu tablo her yöntemin ne yaptığını, güvenli ve idempotent olup olmadığını ve başarılı çağrının döndürdüğü kodları açıklar.
| Yöntem | Amaç | Güvenli? | Idempotent? | Başarı durumu |
|---|---|---|---|---|
| GET | Retrieve a resource | Yes | Yes | 200 OK |
| HEAD | Retrieve headers only, no body | Yes | Yes | 200 OK |
| POST | Create a resource or trigger an action | No | No | 201 Created |
| PUT | Replace a resource entirely | No | Yes | 200 OK / 204 No Content |
| PATCH | Apply a partial update | No | No | 200 OK |
| DELETE | Remove a resource | No | Yes | 200 OK / 204 No Content |
| OPTIONS | CORS preflight; list allowed methods | Yes | Yes | 204 / 200 OK |
| TRACE | Echo the request back for diagnostics | Yes | Yes | 200 OK |
| CONNECT | Open a tunnel, e.g. HTTPS via a proxy | No | No | 200 OK |
Notlar
- Güvenli, metodun sunucu durumunu asla değiştirmediği anlamına gelir: yalnızca GET, HEAD, OPTIONS ve TRACE güvenlidir.
- Idempotent, çağrıyı tekrarlamanın tek çağrıyla aynı sonucu vermesi demektir: PUT, DELETE ve GET buna uyar; POST ve PATCH uymaz.
- Bir yol bir metodu kabul etmediğinde sunucu 405 Method Not Allowed yanıtı verir ve genellikle Allow başlığını ekler.
Sık sorulan sorular
- GET ile POST arasındaki fark nedir?
- GET, yan etkisi olmadan bir kaynağı alır ve güvenle tekrarlanabilir; parametreler URL'de taşınır. POST bir şey oluşturur veya bir eylemi tetikler, durumu değiştirebilir ve körü körüne tekrarlanmamalıdır.
- Bir HTTP yönteminin güvenli olması ne demektir?
- Güvenli bir yöntem sunucu durumunu asla değiştirmez, bu yüzden risk olmadan çağrılabilir. GET, HEAD, OPTIONS ve TRACE güvenlidir; POST, PUT, PATCH ve DELETE güvenli değildir.
- PUT ile PATCH arasındaki fark nedir?
- PUT, gönderdiğiniz veriyle kaynağın tamamını değiştirir; PATCH yalnızca seçili alanlara kısmi değişiklik uygular. PUT idempotenttir, tekrarlansa da sonuç aynıdır; PATCH genelde değildir.
- HEAD yöntemi ne işe yarar?
- HEAD, GET gibi davranır ama yanıt gövdesi döndürmez. İçeriğin tamamını indirmeden bir kaynağın var olup olmadığını, boyutunu veya başlıklarını kontrol etmek için kullanışlıdır.