HTTP protokoli va REST API
HTTP so‘rov-javob modeli, usullar va holat kodlarini hamda REST arxitekturasi tamoyillarini o‘rganasiz. Resurslarga asoslangan, tushunarli va xavfsiz API loyihalashni mashq qilasiz.
Mavzular ro‘yxati (2 / 2)
1-bob. Operatsion tizimlar
2-bob. Tarmoq texnologiyalari
HTTP (HyperText Transfer Protocol) — mijoz (masalan, brauzer) va server o‘rtasida ma’lumot almashishning ilova darajasidagi protokoli. U so‘rov-javob modeliga asoslanadi: mijoz so‘rov yuboradi, server javob qaytaradi; so‘rov usul, manzil (URL), sarlavhalar va ixtiyoriy tanadan iborat. HTTP holatsiz (stateless) bo‘lgani uchun server har bir so‘rovni oldingilaridan mustaqil qayta ishlaydi, foydalanuvchini eslab qolish uchun esa cookie yoki token ishlatiladi. Ulanishni himoyalash uchun HTTP TLS ustida ishlatiladi va bu HTTPS deb ataladi.
Eng ko‘p ishlatiladigan usullar: GET — resursni o‘qish, POST — yangisini yaratish, PUT — resursni to‘liq almashtirish, PATCH — qisman o‘zgartirish va DELETE — o‘chirish. GET xavfsiz hisoblanadi (server holatini o‘zgartirmaydi); GET, PUT va DELETE esa idempotent, ya’ni so‘rovni takrorlash server holatiga qo‘shimcha ta’sir qilmaydi, POST idempotent emas. Javobdagi holat kodi natijani bildiradi: 2xx — muvaffaqiyat (200 OK, 201 Created), 3xx — yo‘naltirish, 4xx — mijoz xatosi (404 Not Found), 5xx — server xatosi (500 Internal Server Error).
REST (Representational State Transfer) — Roy Fielding 2000-yilda doktorlik dissertatsiyasida bayon qilgan arxitektura uslubi. Uning asosiy g‘oyasi: har bir narsa (foydalanuvchi, buyurtma, maqola) resurs bo‘lib, o‘z manziliga ega, masalan /users/42. Resurs ustidagi amal HTTP usuli bilan ifodalanadi: GET /users/42 foydalanuvchini qaytaradi, DELETE /users/42 esa uni o‘chiradi. Resurs odatda JSON formatida uzatiladi, mijoz uning turini Content-Type sarlavhasidan biladi.
REST bir necha cheklovga tayanadi: mijoz va serverning ajratilishi, holatsizlik (har bir so‘rovda zarur ma’lumot to‘liq bo‘ladi), keshlash imkoniyati, yagona interfeys va qatlamli tuzilma. Amalda yaxshi API manzillarida fe’l emas, ot ishlatiladi (/orders, /orders/7), to‘plamlar ko‘plikda nomlanadi va versiya manzilda ko‘rsatiladi (/v1/orders). Xatolar mos holat kodi va tushunarli xabar bilan qaytariladi, autentifikatsiya uchun odatda Authorization sarlavhasidagi token ishlatiladi, aloqa esa HTTPS bilan himoyalanadi.
Asosiy xulosalar
- HTTP — so‘rov-javob modeliga asoslangan, holatsiz ilova darajasidagi protokol.
- Usullar (
GET,POST,PUT,PATCH,DELETE) resurs ustidagi amalni, holat kodlari (2xx–5xx) esa natijani bildiradi. GET,PUTvaDELETEidempotent,POSTesa idempotent emas.- REST — resurslar, ularning manzillari va yagona interfeysga asoslangan arxitektura uslubi.
- Yaxshi API ot ishlatadigan manzillar, to‘g‘ri holat kodlari, versiyalash va HTTPS’dan foydalanadi.
Amaliy topshiriqlar
- Terminalda
curl -i https://example.combuyrug‘ini bajaring va javobdagi holat kodini,Content-Typesarlavhasini hamda yana ikkita sarlavhani tushuntirib bering. - Brauzer DevTools’ning Network bo‘limi ochiq holda istalgan saytni yuklang va kamida uchta so‘rovning usuli, holat kodi hamda hajmini yozib oling.
- Kitoblar (
books) resursi uchun REST API loyihalang: ro‘yxat, bitta kitob, yaratish, yangilash va o‘chirish amallari uchun HTTP usuli, manzil va kutiladigan holat kodlarini jadvalga yozing.
Mustahkamlash savollari
O‘zingizni sinab ko‘ring: avval o‘ylab ko‘ring, keyin javobni oching.
1Nima uchun HTTP holatsiz protokol deyiladi?Javobni ko‘rishJavobni yashirish
Server har bir so‘rovni oldingi so‘rovlardan mustaqil qayta ishlaydi va ular haqida ma’lumot saqlamaydi; sessiya kerak bo‘lsa, cookie yoki token har safar mijoz tomonidan yuboriladi.2`PUT` va `POST` usullari o‘rtasidagi farq nima?Javobni ko‘rishJavobni yashirish
`PUT` aniq manzildagi resursni to‘liq almashtiradi va idempotent; `POST` odatda yangi resurs yaratadi yoki amalni ishga tushiradi va takrorlansa, har safar yangi natija berishi mumkin.3`401` va `403` holat kodlari qanday farqlanadi?Javobni ko‘rishJavobni yashirish
`401` — mijoz autentifikatsiyadan o‘tmagan (kimligi noma’lum), `403` — kimligi ma’lum, lekin resursga kirishga ruxsati yo‘q.
Saytga kiring
Slaydlar va PDF faqat ro‘yxatdan o‘tgan foydalanuvchilar uchun: ko‘rish ham, yuklab olish ham. Kirish bepul.
Saytga kiring
Slaydlar va PDF faqat ro‘yxatdan o‘tgan foydalanuvchilar uchun: ko‘rish ham, yuklab olish ham. Kirish bepul.
0 / 2 mavzu o‘tildi
Kirib belgilash