HTTP metotları (GET, POST, PUT, DELETE…) nedir?
Kısa cevap
HTTP metodu, istemcinin istekte belirttiği kaynak üzerinde ne yapmak istediğini söyler: GET okur, POST veri gönderir, PUT kaynağı gönderilen içerikle oluşturur ya da değiştirir, DELETE siler; HEAD yalnızca header'ları ister, OPTIONS sunucunun desteklediği seçenekleri sorar. Metot isteğin ilk satırında path'ten önce yazılır (GET /index.html HTTP/1.1). TR7'de metot birçok yerde karar ölçütüdür: Health Checks profilinin Method alanı denetim isteğinin metodunu belirler (varsayılan GET), aksiyonların Conditions listesinde If HTTP method is … hazır koşulları bulunur, CORS aksiyonunun Allowed Methods alanı izin verilen metotları listeler, Cache profilindeki Ignore HTTP Method Standards açılırsa POST gibi metotların yanıtları da cache'lenebilir, WAF kuralının Allowed Methods alanı bir sayfanın kabul ettiği metotları sınırlar; HTTP Logs ekranında kayıtlar Method filtresiyle süzülür.
TR7'de Nerede Kullanılır
| Nerede | Alan / etiket | Ne için |
|---|---|---|
| Load Balancer → Profiles (L4-L7 Behavior Sets) → Health Checks → HTTP / HTTPS profili | Method (varsayılan GET) | Health check isteğinin metodu |
| Load Balancer → Actions (Policy Actions) → aksiyon formu → Conditions | If HTTP method is GET or HEAD, If HTTP method is POST, … (CONNECT, HEAD, OPTIONS, TRACE, DELETE, PUT ve her birinin NOT hâli) (koşullarla ilişki) | Aksiyonu yalnızca belirli metotla gelen isteklerde çalıştırma |
| Load Balancer → Actions (Policy Actions) → CORS | Allowed Methods | Tarayıcıya izin verilen metotları bildirme |
| Load Balancer → Profiles (L4-L7 Behavior Sets) → Cache | Ignore HTTP Method Standards (varsayılan kapalı) | GET ve HEAD dışındaki metotların (ör. POST) yanıtlarını da cache'leme |
| Left Monitor Panel → WAF-Protected vServices → vService → WAF Management → N page types → kural formu | Allowed Methods: Any Methods (varsayılan), Multiple methods, None | Bir sayfanın kabul ettiği metotları sınırlama |
| vService → Logs & Tracking → HTTP Logs | Method filtresi | Kayıtları metoda göre süzme |
| Aksiyon değer alanları → Smart Variables | HTTP Method (↓Method) | İsteğin metodunu bir header'a ya da log satırına yazma |
Sık Kullanılan Metotlar
| Metot | Amaç | İstek gövdesi |
|---|---|---|
| GET | Kaynağı okuma | Standartta tanımlı bir anlamı yoktur |
| HEAD | GET ile aynı yanıtın yalnızca header'larını alma | Standartta tanımlı bir anlamı yoktur |
| POST | Veri gönderme, işlem başlatma | Taşır |
| PUT | Kaynağı gönderilen içerikle oluşturma ya da tamamen değiştirme | Taşır |
| PATCH | Kaynağı kısmen değiştirme | Taşır |
| DELETE | Kaynağı silme | Standartta tanımlı bir anlamı yoktur |
| OPTIONS | Desteklenen seçenekleri sorma; tarayıcılarda CORS preflight | Genellikle taşımaz |
Metotların tanımı RFC 9110 · Methods ve PATCH için RFC 5789'dadır.
Sık Karıştırılan Noktalar
- "Metot yalnızca uygulamayı ilgilendirir." TR7'de health check isteği, aksiyon koşulları, CORS yanıtı, cache kararı ve WAF kuralı metoda göre değişir.
- "GET istekleri zararsızdır." Saldırı yükü query string içinde GET ile de taşınır; WAF GET isteklerini de denetler.
- "WAF her sayfada metotları varsayılan olarak sınırlar." WAF kuralının Allowed Methods varsayılanı Any Methods'tir ve metot denetimi yapılmaz; sınırlamak için Multiple Methods seçilip izinli metotlar işaretlenir (Bir sayfaya yalnızca belirli HTTP metotlarına izin verebilir miyim (Allowed Methods)?).
Dokümantasyonda nasıl yapılır
