Sobes.tech
Middle

REST ning tamoyillari qanday?

sobes.tech AI

AIdan javob

REST ning quyidagi tamoyillari mavjud:

  • Mijoz-server arxitekturasi: Mijoz (xizmatdan foydalanuvchi) va server (xizmat ta'minlovchi) o'rtasida mas'uliyatlarni ajratish. Bu mijoz kodining ko'chirilishini va serverning kengaytirilishini ta'minlaydi.
  • Holatsizlik (Stateless): Mijozdan serverga har bir so'rovda serverga bu so'rovni bajarish uchun zarur bo'lgan barcha ma'lumotlar bo'lishi kerak. Server so'rovlar orasida mijoz holatini saqlamaydi.
  • Keshga olish mumkin: Server ma'lumotlarni mijoz yoki o'rta qatlamlar tomonidan keshga olish mumkinligini aniq ko'rsatishi mumkin. Bu ishlash va kengaytirilishni yaxshilaydi.
  • Bir xil interfeys: Eng muhim tamoyil bo'lib, to'rt ta kichik tamoyilni o'z ichiga oladi:
    • Resurslarni identifikatsiya qilish: Resurslar yagona URI lar bilan identifikatsiya qilinadi.
    • Resurslarni vakilliklar orqali manipulyatsiya qilish: Mijoz resurslar bilan o'zaro aloqada bo'lib, ularning vakilliklarini (masalan, JSON yoki XML formatida) oladi va yangi vakilliklarni yuboradi, bu esa resurs holatini o'zgartiradi.
    • O'z-o'zini ta'riflovchi xabarlar: Har bir xabar yetib boruvchiga uni qanday ishlashni tushunish uchun yetarli ma'lumotlarni o'z ichiga oladi. Standart HTTP sarlavhalaridan foydalaniladi.
    • Hipermedia - ilova holatining dvigateli (HATEOAS): Mijoz resurslarning vakilliklarida joylashtirilgan hiperlinklar orqali mavjud harakatlar va ilova holatlari o'rtasidagi mumkin bo'lgan o'tishlar haqida ma'lumot topishi kerak.
  • Qavatli tizim: Tizim o'rta qatlamlar (masalan, proksi, keshlar, gatewaylar) yordamida tashkil etilishi mumkin va bu qatlamlar orqali so'rovlar va javoblar o'tadi. Mijoz to'g'ridan-to'g'ri yakuniy server bilan yoki o'rta qatlamlar orqali aloqa qilayotganini bilmaydi.
  • So'rov bo'yicha kod (Code on Demand - ixtiyoriy): Server vaqtinchalik mijoz funksionalligini kengaytirishi mumkin, bajariladigan kodni (masalan, JavaScript) uzatish orqali. Bu tamoyil REST bilan mos kelish uchun majburiy emas.