Intern
HTTP so'rovlarining qanday turlari mavjud?
sobes.tech AI
AIdan javob
Asosiy HTTP so'rov turlari: GET, POST, PUT, DELETE, PATCH, HEAD, OPTIONS, TRACE, CONNECT.
Eng keng tarqalganlarining tavsifi:
- GET: Ko'rsatilgan resursning ko'rinishini so'raydi. Bu usul bilan so'rovlar faqat ma'lumotlarni olish uchun bo'lishi kerak.
- POST: Ma'lumotlarni ma'lum bir resursga yuboradi. Ko'pincha natija holat o'zgarishi yoki serverda yon ta'sirlar bo'ladi.
- PUT: Maqsadli resursning barcha hozirgi ko'rsatmalarini so'rov matnidagi ma'lumotlar bilan almashtiradi.
- DELETE: Ko'rsatilgan resursni o'chiradi.
- PATCH: Resursga qisman o'zgartirishlar kiritadi.
- HEAD:
GETkabi so'rov yuboradi, lekin javob matni bo'lmaydi. Metadatalarni olish uchun ishlatiladi. - OPTIONS: Maqsadli resurs uchun aloqa parametrlarini tavsiflaydi.
- CONNECT: So'ralgan ulanishni TCP/IP proksi sifatida o'zgartiradi.
- TRACE: Maqsadli resursga yo'ldagi feedback testini o'tkazadi.
GET va POST o'rtasidagi farqlar:
| Xususiyat | GET | POST |
|---|---|---|
| Maqsad | Ma'lumotlarni olish | Ma'lumotlarni yuborish |
| Ma'lumotlarni uzatish | URL parametrlar (Query String) orqali | So'rov matni orqali |
| Xavfsizlik | Idempotent (takroriy so'rovlar holatni o'zgartirmaydi) | Idempotent emas |
| Ma'lumotlarning ko'rinishi | URLda ko'rinadi, brauzer tarixida va server loglarida saqlanadi | URLda ko'rinmaydi, tarixda saqlanmaydi |
| Ma'lumotlar hajmi | URL uzunligi bilan cheklangan | Cheklovsiz (yoki juda katta) |
| Kesh | Keshga olinishi mumkin | Asosiy vositalar bilan keshga olinmaydi |
| Yulduzcha | Yulduzcha bilan sahifa qo'shish mumkin | Mavjud emas (oddiy forma yuborish usullari uchun) |
PHPda GET dan foydalanish misoli:
<?php
// URL'dan 'id' parametrini olish
$userId = $_GET['id'];
echo "Foydalanuvchi ID: " . htmlspecialchars($userId);
?>
PHPda POST dan foydalanish misoli (forma ma'lumotlarini ishlash):
<?php
// So'rov POST usulida bo'lsa tekshirish
if ($_SERVER['REQUEST_METHOD'] === 'POST') {
// So'rov matnidan ma'lumotlarni olish
$username = $_POST['username'];
$password = $_POST['password'];
// Ma'lumotlarni ishlash (masalan, bazaga saqlash)
echo "Foydalanuvchi nomi: " . htmlspecialchars($username) . "<br>";
echo "Parol qabul qilindi.";
}
?>