HTTP-metodlar

All lectures for UZ purposes
Daraja, Dars
Mavjud

4.1 HTTP-metodlar ro'yxati

HTTP-so'rovining dastlabki so'zi metod nomi bo'ladi. Bu hatto Java'dagi metod chaqiruvi bilan o'xshashlik bor. HTTP-so'rovidagi metod resursga bajarilishi kerak bo'lgan asosiy operatsiyani belgilaydi.

Qaysi resursga? Veb boshlangan paytda serverlar faqat HTML-fayllarni saqlashardi, shuning uchun so'rov shunday faylga qilingan va resurs/fayl bilan amalga oshirilishi kerak bo'lgan ba'zi harakatni tasvirlagan.

HTTP standarti quyidagi metodlarni belgilaydi:

# Metod Ta'rif
1 GET Ko'rsatilgan resursning mazmunini so'rash uchun ishlatiladi.
2 POST Ma'lumotlarni mijozdan serverga o'tkazish uchun ishlatiladi. Serverdagi resursning holatini o'zgartiradi.
3 PUT Ma'lumotlarni mijozdan serverga o'tkazish uchun ishlatiladi. Serverda yangi resurs yaratadi.
4 DELETE Serverda ko'rsatilgan resursni o'chiradi.
5 HEAD GET'ga o'xshaydi, lekin javobning tanasi yo'q. Javob sarlavhalarini olish uchun kerak
6 OPTIONS Serverdan ko'rsatilgan resurs uchun qo'llab-quvvatlanadigan metodlar ro'yxatini so'raydi.
7 TRACE Xizmat metodi. So'rov o'tgan serverlar uni o'zgartirmaganligini bilish imkonini beradi.
8 CONNECT Xizmat metodi. Himoyalangan ulanish o'rnatish uchun ishlatiladi.

4.2 GET metodi

GET metodi — eng mashhur HTTP-metod. Odatda brauzer serverga keyingi sahifa uchun so'rov yuborganda aynan shu metodni chaqiradi.

Masalan, siz brauzerda http://javarush.com/path/resource?param1=value1&param2=value2, havolasiga o'tdingiz, — shunda brauzer JavaRush serveriga HTTP-so'rov yuboradi, u starting line bilan boshlanadi:


        GET /path/resource?param1=value1&param2=value2 HTTP/1.1
    

Natijada server brauzerga HTTP-javob yuborishi kerak bo'ladi, u so'rov holatini yozadi va so'ralgan resursni yuboradi.

GET metodining ko'p marta chaqirilishi serverning holatini o'zgartirmasligi va server har safar bir xil javob qaytarishi kerak. Shuning uchun protokolda kesh obyektining murakkab boshqaruvi qo'shilgan.

Birinchidan, GET so'rovi orqali olingan resurslarni brauzer o'z tarafida kesh qilishi mumkin (ba'zi nuanslar bor).

Ikkinchidan, serverga so'rov yuborishda maxsus sarlavha If-Modified-Since va sana ko'rsatish mumkin. Agar so'ralgan resurs/hujjat ko'rsatilgan sanadan beri o'zgargan bo'lsa, server uni yuboradi. O'zgarmagan bo'lsa, resursning tanasi uzatilmaydi. Shunday tushuniladi ki, u mijozda kesh qilingan.

Sahifalarni kesh qilish (GET so'rovlari) doimiy ravishda ishlatiladi, shuning uchun ushbu mavzuni yaxshilab o'rganish tavsiya etiladi.

4.3 POST va PUT metodlari

POST metodi serverdagi resursni o'zgartirish uchun ishlatiladi. Masalan, siz rasmni serverga yuklayotganingizda, brauzeringiz POST so'rovini yuboradi.

Ushbu starting line bilan boshlanadigan HTTP-so'rovni ko'rib chiqamiz:


POST /path/resource?param1=value1&param2=value2 HTTP/1.1
headers…
 
<request body>

Natijada server brauzerga HTTP-javob yuborishi kerak bo'ladi, u so'rov holatini yozadi va o'zgartirilgan resursni yuboradi. POST metodining ko'p marta chaqirilishi serverning holatini o'zgartiradi va server har safar turli javob qaytarishi mumkin.

GET va POST — vebda eng ko'p ishlatiladigan ikki so'rov. Metodlar qanday ishlashini eslab qolishingiz uchun quyidagi jadvalni ko'rib chiqamiz:

GET POST PUT
So'rov Faqat URL URL va tanasi URL va tanasi
Javob Kod va tanasi Kod va tanasi Kod javobi

POST so'rovi haqida batafsil ma'lumotni bu yerda o'qishingiz mumkin.

4.4 DELETE metodi

Nihoyat, DELETE metodi haqida ma'lumot. Bu yerda hammasi oddiy.

Masalan, biz serverda ma'lum bir resursni o'chirishni xohlaymiz. Unga quyidagi turdagi so'rov yuboramiz:


        DELETE  /path/resource?param1=value1&param2=value2 HTTP/1.1
    

Ushbu so'rovni qabul qilganidan so'ng server ko'rsatilgan resursni o'chiradi. Agar, albatta, uni o'chirish uchun sizda ruxsat bo'lsa.

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