Bir İsteğin Anatomisi
Coddy'nin Terminal ile Ağ İletişimi kursunda ders 20 / 47.
curl’ün altında, bir HTTP isteği soket üzerinden gönderilen düz metindir. Ne istediğinizi belirten bir satırla başlar:
GET /index.html HTTP/1.1Üç bölüm vardır: yöntem (ne tür bir işlem olduğu), yol (hangi şey olduğu) ve sürüm. Bundan sonra her satırda bir tane olmak üzere başlıklar, ardından boş bir satır ve son olarak isteğe bağlı bir gövde gelir.
Boş satır yalnızca görsel bir ayrıntı değildir. Sunucunun başlıkların bittiğini ve varsa gövdenin başladığını anlamasını sağlayan şey budur. Bu satır olmadan bir istek asılı kalır, çünkü sunucu hâlâ geri kalanını beklemektedir.
Bir isteği elle gönderebilirsiniz. nc ham bir bağlantı açar ve ona verdiğiniz her şey doğrudan hat üzerinden gönderilir:
printf 'GET / HTTP/1.0\r\n\r\n' | nc 127.0.0.1 9110\r\n, HTTP’nin gerektirdiği satır sonudur ve bunun iki kez yazılması boş satırı oluşturur.
Görev
Zorcurl'ü tamamen atlayın ve HTTP ile kendiniz konuşun.
rawiçerenindex.htmloluşturun- Klasörü 9110 portunda sunun
ncüzerinden ham birGET /index.html HTTP/1.0isteği gönderin ve geri gelen yanıtın yalnızca ilk satırını yazdırın
Bu ilk satır, sunucunun durum satırıdır. Beklenen çıktı:
HTTP/1.0 200 OKBoş satırı unutmayın:
printf 'GET /index.html HTTP/1.0\r\n\r\n'.
Kendin dene
Bu ders kısa bir quiz içerir. Soruları yanıtlamak ve ilerlemeni kaydetmek için derse başla.
Terminal ile Ağ İletişimi bölümündeki tüm dersler
5HTTP'yi Elle Kullanma
Bir İsteğin Anatomisiİstek YöntemleriDurum KodlarıYanıt ÜstbilgileriYanıt YazmaTekrar: HTTP Temelleri6curl'u Derinlemesine İnceleme
Başlıkları GörüntülemeYanıtları KaydetmeÖzel BaşlıklarDurum ve Zamanlamacurl Çıkış KodlarıTekrar: curl Bayrakları9Kimlik Doğrulama ve Hata Ayıklama
API Anahtarları ve BearerUser AgentZaman Aşımları ve Yeniden DenemelerBir Hatanın OkunmasıTekrar: Hata AyıklamaKendi başına pratik yap: Terminal playground