Laravel - HTTP Requestlar
Kirish
Laravel's Illuminate\Http\Request
klassi ilovangiz tomonidan bajarilayotgan HTTP so'rovi bilan o'zaro ishlashga yordam beruvchi va so'rov bilan birga yuborilgan cookie va fayllarni olish imkonini beradi.
Aynan hozirgi vaqt bo'layotgan so'rav ekzemplyarini qabul qilish uchun ishlatoyatgan controller yoki marshutizatoringiz yopilishida ishlatishingiz kerak.
Yuqorida aytilganidek siz Illuminate\Http\Reques
classni faqat controllerda emas marshutizatordaham(route) ishlatishingiz mumkin.
Request Headers
Siz kelayotga so'ravning sarlavhasini(header) ni Request
class dagi header
method orqali olishingizg mumkin. Agar sarlavha headersiz keladigan bo'lsa, method null qaytaradi. Ammo methodga hohishiy bo'lgan ikkinchi argumentni ham ishlatish mumkin:
hasHeader
mehtodi yordamida siz o'zingizga kerakli bo'lgan header kelyabdimi yo'qmi tekshirishingiz ham mumkin:
API loyiha qilinayotganda maslahatim o'zingiz API uchun custom middleware ochib qo'ying. Chunki frontend qismida Accept/Application-Json emas Content-Type/Application-Json header keladi. JSON should be JSON qonuniyatiga amal qiladigan bo'lsak o'zimiz custom middleware yaratib handle method ichiga:
Sunda har bir so'rov sarlavhasiga Accept header qo'shiladi.
Inputlar bilan ishlash
So'rovdan kelayotgan barcha ma'lumotlarni $request->all()
orqali massive ko'rinishida olsa bo'ladi. Kelayotgan so'rov turi HTML-So'rov boladi yoki XHR so'rov bo'ladimi muhim emas.
Agar sizga so'ovda kelgan narsalarni collectionga solish $request->collect()
yordamida amalga oshiriladi.
Faqat ma'lum bir inputlarni olish kerak bo'lsa $request->only()
ishlatilinadi. Method arrayni ham qabul qilishi mumkin.
Bundan tashqari laravelda bir qancha boshqa helper methodlar bor. Agar to'liq tanishib chiqishni istasangiz ushbu havolaga kiring.
Filelar bilan ishlash
Illuminate\Http\Request
yordamidan siz so'rovdan kelayotgan filelarni file
methodi yoki o'zgaruvchan hususiyatlar yordamida olib olishingiz mumkin.Bu method (file)
Illuminate\Http\UploadedFile
classdan namuna(instance) qaytaradi. Hullas qisqa qilib aytganda file bilan hohlagan manipulyatsia qilishingiz mumkin.
tgan so'rovda fayl bormi yo'qligini $request->hasFile()
methodi orqali tekshirib olishingiz mumkin.
Yangi yuklanga fileni saqlash ushun Illuminate\Http\UploadedFile
da store()
method bor. Rasm yuklashda laraveldagi biron bir filesystemdan foydalansangiz bo'ladi. Filesystem bilan to'liqroq tanishish uchun havola ustiga bosing.
Store methodi rasmni filesystem qaysi diskga to'g'rlangan bo'lsa o'sha diskra fileni saqlaydi.Argument sifatida birinchi bo'lib faqat $path beriladi yani. Fqat file saqlanadigan folder nomi. 2-argument sifatida esa disk nomini ham berib yuborish mumkin:
Hozircha faqat shular. Agar qandaydur savol bo'lsa commentlarga yozib qoldiring qo'ldan kelgancha javob berishga harakat qilaman.
Agar postda qandaydur hatolik ketgan bo'lsa ming bor uzur..
(Barcha ma'lumotlar laravel.com dan tikkasiga chopilgan : ) )