HTTP headers
Headers oluşturmayı ve istekte Accept, Content-Type gibi başlıkları göndermeyi öğrenirsin.
Başlıklar ne işe yarar?
HTTP başlıkları istek ve yanıt hakkında ek bilgi taşır. Sunucuya hangi tür yanıtı kabul ettiğini, gönderdiğin verinin türünü ya da kimlik bilgilerini başlıkla bildirirsin.
const headers = new Headers();
headers.set('Accept', 'text/html');Başlıkları bir Headers nesnesiyle ya da düz bir nesne olarak yazabilirsin. Accept istemcinin kabul ettiği türleri, Content-Type ise gönderilen gövdenin türünü belirtir. Başlıklar küçük-büyük harfe duyarsızdır; yazım fark etmez.
fetch'e başlık ekleme
Bir fetch çağrısına başlık eklemek için ikinci parametre olarak bir seçenek nesnesi verirsin. Bu nesnenin headers özelliği başlıkları taşır.
const response = await fetch(url, {
headers: { Accept: 'text/html' }
});İkinci parametre aynı zamanda method, body gibi diğer seçenekleri de alır. Yalnızca headers gerekmiyorsa diğerlerini yazmazsın. Sunucu bu başlıklara bakarak yanıtı uygun türde gönderir.
Uygulama Başlık ekle ve yanıt türünü oku
url değişkeni bir adresi tutuyor. İkinci parametre olarak { headers: { Accept: 'text/html' } } vererek bir fetch isteği yap ve yanıtı response değişkenine al. Sonra response.headers.get('Content-Type') değerini console.log ile yazdır.
Örnek çözümü göster
const response = await fetch(url, {
headers: { Accept: 'text/html' }
});
console.log(response.headers.get('Content-Type'));
Kendini test et
-
Hangi başlık sunucuya kabul ettiğin türü söyler?
// A Content-Type // B Authorization // C Accept // D User-Agent- A
- B
- C
- D
Cevabı göster
C — Doğru! Accept başlığı istemcinin kabul ettiği türleri listeler.
-
Başlıkları anlamlarıyla eşleştir
- Accept
- İstemcinin kabul ettiği türler
- Content-Type
- Gönderilen gövdenin türü
- Authorization
- Kimlik bilgileri
-
Accept başlığını ekle
const response = await fetch(url, { headers: { ____: 'text/html' } });Cevabı göster
const response = await fetch(url, { headers: { Accept: 'text/html' } });