Sobes.tech
Middle

HTTP protokolü nasıl çalışır?

sobes.tech yapay zeka

AI'dan gelen yanıt

HTTP (Hypertext Transfer Protocol) — uygulama katmanı protokolüdür ve kaynaklara, örneğin web sayfalarına erişmek için kullanılır. "İstemci-sunucu" modeliyle çalışır.

İstemci (genellikle bir tarayıcı) sunucuya bir istek gönderir, sunucu isteği işler ve yanıt gönderir.

HTTP mesajının temel öğeleri:

  1. Başlangıç satırı: Mesajın türünü (istek veya yanıt) ve temel parametreleri belirler.

    • İstek: Yöntem (GET, POST, PUT, DELETE vb.), kaynağa yol, protokol sürümü.
    • Yanıt: Protokol sürümü, durum kodu (200 OK, 404 Not Found, 500 Internal Server Error vb.), durumun metinsel açıklaması.
    GET /index.html HTTP/1.1 // İstek başlangıç satırı örneği
    
    HTTP/1.1 200 OK // Yanıt başlangıç satırı örneği
    
  2. Başlıklar (Headers): Mesaj hakkında meta bilgi ve mesaj gövdesini içerir. Her başlık "BaşlıkAdı: Değer" şeklinde gösterilir.

    • İstek başlıkları: Host, User-Agent, Accept, Content-Type, Content-Length vb.
    • Yanıt başlıkları: Content-Type, Content-Length, Server, Set-Cookie vb.
    Host: example.com // Host başlığı örneği
    User-Agent: Mozilla/5.0 // User-Agent başlığı örneği
    
  3. Boş satır: Başlıkları mesaj gövdesinden ayırır.

  4. Mesaj gövdesi (Body): Gönderilen verileri içerir. Bazı isteklerde (örneğin, GET) ve yanıtlar (örneğin, 204 No Content) olmayabilir. POST veya PUT metodlarıyla yapılan isteklerde gövde genellikle gönderilen verileri içerir. Yanıtlarda gövde, istenen kaynağı içerir (örneğin, HTML kodu, resimler, JSON).

    <!DOCTYPE html>
    <html>
    <head>
        <title>Örnek</title>
    </head>
    <body>
        <h1>Merhaba!</h1>
    </body>
    </html>
    

HTTP'nin temel metodları:

Metod Açıklama Kullanım
GET Belirtilen URL'den kaynak talep eder. Veri almak, sunucu durumunu değiştirmeden.
POST Sunucuda işleme için veri gönderir. Form gönderimi, dosya yükleme, kaynak oluşturma.
PUT Belirtilen URL'de kaynağı günceller veya oluşturur. Var olan kaynakları güncelleme.
DELETE Belirtilen URL'deki kaynağı siler. Kaynakları silme.
HEAD Kaynağın başlıklarını, gövdesi olmadan talep eder. Kaynak hakkında meta bilgi edinme.

HTTP, durumsuz (stateless) bir protokoldür. Her istek bağımsızdır. Durumu korumak için çerezler ve oturumlar gibi mekanizmalar kullanılır.