HTTP Sarlavhalari

All lectures for UZ purposes
Daraja, Dars
Mavjud

6.1 Sarlavha turlari

HTTP so'rov sarlavhalari - bu, aslida, http-mijoz va http-server uchun xizmat ma'lumotlari. Lekin ular juda muhim va agar sen ularga hech qanday qiziqish bildirmagan bo'lsang, bu seni doimo qiyinchilikka olib kelishi mumkin. Shunday qilib, hech bo'lmaganda ularni o'qib chiqishga to'g'ri keladi.

Barcha http sarlavhalari 4 asosiy guruhga bo'linadi:

# Sarlavha turi Tavsif Eslatma
1 General Headers Umumiy sarlavhalar So'rovlar va javoblarda ishlatiladi
2 Request Headers So'rov sarlavhalari Faqat so'rovlarda ishlatiladi
3 Response Headers Javob sarlavhalari Faqat javoblarda ishlatiladi
4 Entity Headers Subyekt sarlavhalari Har bir xabar subyektiga qo'shiladi

6.2 User-Agent

Eng muhim va mashhur sarlavha – bu User-Agent. Bu maxsus qator bo'lib, qaysi mijoz serverga so'rov qilyapti, shuni tushuntiradi. Mijoz nomi, shunday qilib aytganda.

Ko'pincha server biroz o'z javobini talabgorga moslashtiradi. Masalan, agar so'rovdan kitobcha keldi degan ma'lumot olingan bo'lsa, mobil qurilmaga mos html sahifa bersa bo'ladi.

Spam-botlar, yuklab olish menejerlari va ayrim brauzerlar tez-tez soxta User-Agent qatorlar yuborib, o'zlarini solih mijozlar ko'rsatishadi. Bu holat user agent spoofing, ya'ni foydalanuvchi agentini o'zgartirish yoki soxtalashtirish deb nomlanadi.

Masalan, mening User-Agent hozirda quyidagicha ko'rinadi:


        Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:99.0) Gecko/20100101 Firefox/99.0
        

Unda brauzer, operatsion tizim va web-mexanizm haqida ma'lumot mavjud.

6.3 Content-Type

Ikkinchi eng mashhur sarlavha – bu Content-Type. U server qaytaradigan resursning MIME turini aniqlash uchun ishlatiladi.

Internetning erta bosqichida qulaylik uchun uzatiladigan media kontent turlari standartlashtirilgan. Ularni Internet Media Types yoki qisqacha MimeTypes deb atashadi. Ular 9 toifaga bo'linadi:

  • application
  • audio
  • example
  • image
  • message
  • model
  • multipart
  • text
  • video

Misollar:

Kategoriya Tur Tavsif
audio audio/mp4 mp4 formatidagi audio fayli
audio/aac AAC formatidagi audio fayli
image image/gif gif rasm
image/jpeg jpeg rasm
image/png png rasm
text text/css CSS fayli
text/html HTML fayli
video video/mpeg mpeg formatidagi video fayli
video/webm webm formatidagi video fayli
video/3gpp 3gpp formatidagi video fayli
application application/x-www-form-urlencoded Kodlangan ma'lumotlar
application/zip Zip arxivi
application/javascript JavaScript
application/xml XML

Odatda server qanday ma'lumotlarni qaytarishini biladi. Lekin agar sen serverni o'z koding orqali javobni o'zing yaratgan bo'lsang, unda javob turi (Content-Type) ni belgilashing kerak.

6.4 Content-Length

Bu sarlavha server javobining uzunligini belgilaydi. Oddiy qilib aytganda, yuklanadigan faylning hajmi. Bu parametrni qo'l bilan o'rnatish shart emas. Ammo, agar biror sababga ko'ra javob to'liq kelmasa, server nima berganini ko'rib chiqish foydali bo'lishi mumkin.

6.5 Accept-Encoding

Bu sarlavha yordamida mijoz serverga turli xil kontent siqish algoritmlarini qo'llab-quvvatlashini aytishi mumkin. Shunday qilib, server kontentni avval zip arxiviga siqib, keyin uni mijozga yuborishi mumkin va mijoz uni to'g'ri tiklashi mumkin.

Arxivlashning afzalligi shundaki, fayl qancha kichik bo'lsa, u shuncha tez uzatiladi. Arxivlashning kamchiliklari - mijoz va serverga qo'shimcha yuk. Arxivlash katta fayllarni uzatishda ma'noga ega va kichik fayllarni uzatishda ko'pincha ma'nosiz.

Shunday sarlavha namunasi:


        Accept-Encoding: deflate, gzip;q=1.0, *;q=0.5
        

Bu yerda deflate va gzip - ma'lumotlarni siqish algoritmlari, q esa siqilish darajasini bildiradi.

Izohlar
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION