- Katılım
- 17 Ocak 2024
- Mesajlar
- 265.231
- Çözümler
- 4
- Tepkime puanı
- 1
- Puan
- 38
- Konu Yazar
- #1
HTTP (Hypertext Transfer Protocol), web üzerindeki verilerin transferini sağlamak için kullanılan bir protokoldür. İnternetteki web sitelerinin ve uygulamaların çalışması için temel yapı taşlarından biridir. HTTP, istemci (genellikle bir web tarayıcısı) ile sunucu arasındaki iletişimi düzenler ve web sayfalarını görüntülemek için veri iletimini gerçekleştirir.
HTTP Nasıl Çalışır?
HTTP, istemci (tarayıcı) ve sunucu arasında istek ve yanıtlarla gerçekleşen bir iletişim protokolüdür. Temelde şu şekilde çalışır:- İstek Gönderme (Request):
- İstemci:Web tarayıcınız veya başka bir uygulama (istemci), bir URL (Uniform Resource Locator) yazıldığında veya bir bağlantıya tıklanıldığında bir HTTP isteği gönderir. Bu istek, genellikle şu bileşenlerden oluşur:
- Metod (GET, POST, vb.): İsteğin ne tür bir işlem yapacağını belirtir. Örneğin, "GET" metodu veri almak için kullanılırken, "POST" metodu veri göndermek için kullanılır.
- URL: Web adresi. İstemci, hangi kaynağa erişeceğini belirtir (örneğin, www.example.com).
- Başlıklar (Headers): İstemcinin sunucuya gönderdiği ek bilgiler. Örneğin, istemcinin tarayıcı türü, dil tercihleri veya güvenlik bilgileri gibi.
- Veri (Body): Bazı HTTP isteklerinde veri de gönderilebilir (özellikle POST isteklerinde), bu genellikle form verisi gibi bilgileri içerir.
- İstemci:Web tarayıcınız veya başka bir uygulama (istemci), bir URL (Uniform Resource Locator) yazıldığında veya bir bağlantıya tıklanıldığında bir HTTP isteği gönderir. Bu istek, genellikle şu bileşenlerden oluşur:
- Sunucunun Yanıtı (Response):
- Sunucu:İstemciden gelen HTTP isteğini alır ve uygun bir yanıt gönderir. Sunucu, istenilen kaynağı (örneğin bir web sayfası) isteğe bağlı olarak HTML, JSON, XML, görsel gibi formatlarda döndürür. Yanıt genellikle şu bileşenlerden oluşur:
- Durum Kodu (Status Code): Sunucu, isteğin başarıyla tamamlandığını veya bir hata olduğunu belirten bir durum kodu gönderir. Örneğin, "200 OK" başarılı bir yanıtı, "404 Not Found" ise belirtilen kaynağın bulunamadığını gösterir.
- Başlıklar (Headers): Yanıtla ilgili ek bilgiler sunucu tarafından gönderilir. Bu başlıklar, içerik türü (HTML, JSON, vb.), güvenlik bilgileri ve oturum bilgilerini içerebilir.
- Veri (Body): Sunucu, isteğe bağlı olarak verileri döndürebilir. Bu, örneğin bir web sayfasının HTML içeriği olabilir.
- Sunucu:İstemciden gelen HTTP isteğini alır ve uygun bir yanıt gönderir. Sunucu, istenilen kaynağı (örneğin bir web sayfası) isteğe bağlı olarak HTML, JSON, XML, görsel gibi formatlarda döndürür. Yanıt genellikle şu bileşenlerden oluşur:
- İletişimin Tamamlanması:
- HTTP, istemci ve sunucu arasındaki iletişimi tamamladıktan sonra, bağlantı kapanır. HTTP, bağlantıyı açmak ve kapatmak için her istekte ve yanıtla birlikte ayrı işlemler yapar.
HTTP ve HTTPS Arasındaki Fark
- HTTP: Veriler şifrelenmemiş olarak iletilir. Bu, verilerin internet üzerinden açık bir şekilde gönderildiği anlamına gelir. Bu durum, güvenlik riskleri oluşturabilir, çünkü gönderilen veriler kolayca üçüncü şahıslar tarafından ele geçirilebilir.
- HTTPS (Hypertext Transfer Protocol Secure): HTTPS, HTTP'nin güvenli versiyonudur. HTTPS, iletilen verilerin şifrelenmesini sağlar, bu da verilerin gizliliğini korur ve güvenliği artırır. HTTPS, özellikle online alışveriş, bankacılık işlemleri ve kişisel verilerin işlendiği siteler için önemlidir.
HTTP Metodları
HTTP isteklerinde farklı metodlar (yöntemler) kullanılır, her biri farklı bir amaca hizmet eder:- GET: Web sayfasını ya da veriyi almak için kullanılır. En yaygın HTTP metodudur.
- POST: Sunucuya veri göndermek için kullanılır. Form verisi göndermek için yaygın olarak kullanılır.
- PUT: Sunucudaki mevcut veriyi güncellemek için kullanılır.
- DELETE: Sunucudaki veriyi silmek için kullanılır.
- PATCH: Verinin bir kısmını güncellemek için kullanılır (genellikle daha küçük değişiklikler için).
- HEAD: Yalnızca başlık bilgilerini almak için kullanılır, veri gönderilmez.
HTTP Durum Kodları
HTTP yanıtlarında durum kodları, istemciye isteğin nasıl işlendiği hakkında bilgi verir. En yaygın durum kodları şunlardır:- 200 OK: İstek başarıyla tamamlandı.
- 301 Moved Permanently: Kaynak kalıcı olarak başka bir adrese taşındı.
- 400 Bad Request: İstek hatalıydı, sunucu tarafından anlaşılamadı.
- 401 Unauthorized: Erişim için kimlik doğrulama gerekli.
- 404 Not Found: İstenen kaynak bulunamadı.
- 500 Internal Server Error: Sunucu hatası, istemcinin yapabileceği bir şey yok.