HTML istek yöntemleri
- Önceki Sayfa HTTP Mesajları
- Sonraki Sayfa Klavye Kısayolları
HTTP nedir?
Hipermetin Transfer Protokolü (Hypertext Transfer Protocol, kısaltma HTTP) istemci ve sunucu arasındaki iletişimi etkinleştirmek için tasarlanmıştır.
HTTP, istemci ve sunucu arasındaki istek-yanıt protokolüdür.
Örnek: İstemci (tarayıcı) sunucuya HTTP istek gönderir; ardından sunucu yanıtını istemciye döndürür. Yanıt, istek durum bilgilerini içerir, talep edilen içeriği de içerebilir.
HTTP yöntemi
- GET
- POST
- PUT
- HEAD
- DELETE
- PATCH
- OPTIONS
En yaygın iki yöntem: GET ve POST'tur.
GET yöntemi
GET, belirli bir kaynaktan veri talep etmek için kullanılır.
GET, en yaygın HTTP yöntemlerinden biridir.
Lütfen, sorgu dizisi (ad/değer çifti) GET isteminin URL'inde gönderilir:
/test/demo_form.php?name1=value1&name2=value2
GET istemleri hakkında bazı diğer notlar:
- GET istemleri saklanabilir
- GET istemleri tarayıcı tarihçesinde saklanır
- GET istemleri yer imi olarak saklanabilir
- Duyarlı veriler işlenirken GET istemleri kullanılmamalıdır
- GET istemleri uzunluk sınırlamasına sahiptir
- GET istemleri sadece verileri almak (değiştirmemek) için kullanmalıdır
POST yöntemi
POST, verileri sunucuya göndermek için kullanılır ve kaynakları oluşturmak veya güncellemek için kullanılır.
Sunucuya POST ile gönderilen veriler, HTTP istemlerinin istem gövdesinde saklanır:
POST /test/demo_form.php HTTP/1.1 Host: codew3c.com name1=value1&name2=value2
POST, en yaygın HTTP yöntemlerinden biridir.
POST istemleri hakkında bazı diğer notlar:
- POST istemleri saklanamaz
- POST istemleri tarayıcı tarihçesinde saklanmaz
- POST, yer imi olarak saklanamaz
- POST istemlerine veri uzunluğu gereksinimi yoktur
PUT yöntemi
PUT, verileri sunucuya göndermek için kullanılır ve kaynakları oluşturmak veya güncellemek için kullanılır.
POST ve PUT arasındaki fark, PUT istemlerinin idempotent (idempotent) olduğunu (idempotent) anlamına gelir. Yani, aynı PUT istemini defalarca çağırmak her zaman aynı sonucu üretir. Aksine, POST istemlerini tekrar tekrar çağırmak, aynı kaynağı defalarca oluşturmanın yan etkilerine sahiptir.
HEAD yöntemi
HEAD ve GET neredeyse aynıdır, ancak yanıtı metin yoktur.
Diyelim ki GET /users, kullanıcı listesini dönerse, HEAD /users aynı istemi gönderir, ancak kullanıcı listesini dönmeyebilir.
HEAD istemi, GET istemini gerçekten göndermeden önce (örneğin, büyük dosyaları indirmeden veya yanıtı metin olarak almadan) GET istemisinin döneceği içeriği kontrol etmek için çok faydalıdır.
DELETE yöntemi
DELETE yöntemi, belirtilen kaynağı siler.
OPTIONS yöntemi
OPTIONS yöntemi, hedef kaynağın iletişim seçeneklerini tanımlar.
GET ile POST karşılaştırma
Aşağıdaki tablo, iki HTTP yöntemini: GET ve POST karşılaştırır.
GET | POST | |
---|---|---|
Geri düğmesi/çözünürlük | Masum | Veriler yeniden sunulacaktır (tarayıcı, kullanıcıya verilerin yeniden sunulacağını bildirmelidir). |
Yer imi | Yer imi olarak saklanabilir | Yer imi olarak saklanamaz |
Kahve | Kahve saklanabilir | Önbellekleme yapılamaz |
Kodlama Türü | application/x-www-form-urlencoded | application/x-www-form-urlencoded veya multipart/form-data. İkili veri için çoklu kodlama kullanın. |
Tarih | Parametreler tarayıcı tarihi'nde saklanır. | Parametreler tarayıcı tarihi'nde saklanmaz. |
Veri uzunluğuna yönelik sınırlamalar | Evet. Veri gönderirken GET yöntemi URL'ye veri ekler; URL uzunluğu sınırlıdır (URL'nin maksimum uzunluğu 2048 karakterdir). | Sınırlama yok. |
Veri türüne yönelik sınırlamalar | Sadece ASCII karakterlerine izin verilir. | Sınırlama yok. İkili veri de izin verilir. |
Güvenlik | POST'a göre GET, gönderilen verilerin URL'in bir parçası olduğu için güvenlik açığı daha fazladır. Parola veya diğer hassas bilgileri gönderirken GET'i asla kullanmayın! |
POST, GET'e göre daha güvenlidir çünkü parametreler tarayıcı tarihi veya web sunucusu günlüklerinde saklanmaz. |
Görünürlük | Veriler URL'de herkes için görülebilir. | Veriler URL'de görüntülenmez. |
- Önceki Sayfa HTTP Mesajları
- Sonraki Sayfa Klavye Kısayolları