JSON sxemasi bo'yicha qo'llanma

JSON sxemasi

JSON sxemasiga kirishdan oldin JSON va JSON sxemasi o'rtasidagi farqni bilish muhimdir.

JSON

JSON JavaScript Object Notation-ning qisqartmasi bo'lib, bu tildan mustaqil ma'lumotlar formati bo'lib, APIlar so'rovlar va javoblarni yuborish uchun foydalanadi. JSON odamlar va mashinalar uchun o'qish va yozish uchun oddiy. JSON - bu tilga bog'lanmagan matnga asoslangan format (tildan mustaqil).

JSON sxemasi

JSON sxemasi JSON ma'lumotlar strukturasini tekshirish uchun foydali vositadir. JSON tuzilishini belgilash uchun JSON-ga asoslangan formatdan foydalaning. Uning maqsadi JSON ma'lumotlarining maqbulligini ta'minlashdir. Ilovamizning JSON ma'lumotlari uchun konventsiya sxema yordamida aniqlanishi mumkin.

JSON sxemasi spetsifikatsiyasining uchta asosiy bo'limi mavjud:

JSON giper-sxema:

JSON Hyper-Schema - bu JSON sxemasi tili bo'lib, u JSON hujjatlarini giperhavolalar va HTTP kabi matnga asoslangan muhitlar orqali tashqi JSON resurslarini qayta ishlash va o'zgartirish bo'yicha ko'rsatmalar bilan belgilash uchun ishlatilishi mumkin. bosing Bu yerga JSON Hyper-Schema haqida ko'proq ma'lumot olish uchun.

JSON sxemasi yadrosi:

Bu JSON hujjatlarini yorliqlash va tasdiqlash qoidalari to'plami. 

JSON sxemasi yadrosi:

  • Sizda mavjud bo'lgan ma'lumotlar formatini tavsiflaydi. 
  • Avtomatlashtirilgan testda foydalanish mumkin bo'lgan ma'lumotlarni tasdiqlaydi. 
  • Mijozlar tomonidan taqdim etilgan ma'lumotlarning to'g'riligini ta'minlash.  
  • Odamlar va mashinalar uchun o'qilishi mumkin bo'lgan hujjatlarni taqdim etadi. 

JSON sxemasini tekshirish:

JSON sxemasi asosida tekshirish misol ma'lumotlari tuzilishiga cheklovlar qo'yadi. Shundan so'ng, tasdiqlanmagan har qanday kalit so'zlar axborottavsiflovchi metama'lumotlar va foydalanish ko'rsatkichlari kabi barcha e'lon qilingan cheklovlarga javob beradigan misol pozitsiyasiga qo'shiladi. 

Newtonsoft-ning JSON Schema Validator vositasi to'g'ridan-to'g'ri brauzeringizda bepul foydalanishingiz mumkin bo'lgan vositadir. JSON sxemangizning tuzilishini sinab ko'rish uchun ushbu vositadan foydalanishingiz mumkin. Bu sahifada boshlash uchun boshqaruv elementlari va tushuntirishlar mavjud. Shunday qilib, JSON tuzilmangizni qanday yaxshilashni ko'rish oson.

JSON sxemasini tekshirish vositasi yordamida JSON ob'ektimizni tekshirishimiz mumkin:

JSON Validator xatosi bepul

Yuqoridagi rasmda ko'rsatilganidek, bizda yoshni tekshirish (minimal = 20 va maksimal = 40) mavjud. Hech qanday xato topilmadi.

Xato bilan JSON Validator

Agar yosh tekshiruvi noto'g'ri kiritilgan bo'lsa, u xatolikni ko'rsatdi.

JSON sxemasini yaratish

Keling, nima haqida gapirayotganimizni bilish uchun JSON sxemasining misolini ko'rib chiqaylik. Mahsulot katalogini tavsiflovchi asosiy JSON obyekti quyidagicha:

JSON misoli

Uning JSON sxemasi quyidagicha yozilishi mumkin:

JSON sxemasi natijasi

JSON sxemasi JSON hujjatidir va bu hujjat ob'ekt bo'lishi kerak. Kalit so'zlar JSON sxemasi tomonidan belgilangan ob'ekt a'zolari/atributlaridir. JSON sxemasidagi "kalit so'zlar" ob'ektdagi kalit/qiymat kombinatsiyasining "kalit" qismiga ishora qiladi. JSON sxemasini yozish ma'lum bir "kalit so'z" ni ob'ekt ichidagi qiymatga ko'rsatishni o'z ichiga oladi. 

Keling, misolimizda ishlatgan kalit so'zlarni batafsil ko'rib chiqaylik: 

Resurs sxemasi mos keladigan JSON sxemasi ushbu atribut tomonidan yozilgan. Ushbu sxema “V4” loyihasida ko'rsatilganidek, qoralamalar vXNUMX standartiga muvofiq yozilgan.$ sxema” kalit so'zi. Bu sizning sxemangizning eski versiyaga mos kelishi yoki mos kelmasligi mumkin bo'lgan joriy versiyaga qaytishini oldini oladi.

"sarlavha"Va"tavsifi” kalit so'zlar faqat tushuntirish; ular tekshirilayotgan ma'lumotlarga hech qanday cheklovlar qo'ymaydi. Ushbu ikkita kalit so'z sxemaning maqsadini tavsiflaydi: u mahsulotni tavsiflaydi.

"shrift” kalit so‘zi JSON ma’lumotlarimizning birinchi chegara shartini belgilaydi; u JSON ob'ekti bo'lishi kerak. Agar biz barcha sxemalar uchun turni belgilamasak, kod ishlamaydi. Ba'zi bir keng tarqalgan turlari "raqam" "mantiqiy" "butun" "null" "ob'ekt" "massiv" "string".

 

JSON sxemasi quyidagi kutubxonalar tomonidan qo'llab-quvvatlanadi:

 

Til

Kutubxona

C

WJElement

Python

jschon

PHP

Opis Json Schema

JavaScript

ajv

Go

gojsonsxema

Kotlin

Media-validator

yoqut

JSONSchemer

JSON (sintaksisi)

Keling, JSONning asosiy sintaksisini qisqacha ko'rib chiqaylik. JSON sintaksisi JavaScript sintaksisining quyi toʻplami boʻlib, quyidagi elementlarni oʻz ichiga oladi:

  • Ma'lumotlarni ifodalovchi nom/qiymat juftliklaridan foydalaniladi.
  • Ob'ektlar jingalak qavs ichida saqlanadi va har bir nom ':' (ko'p nuqta) bilan boshlanib, qiymat juftlari "," (vergul) bilan ajratiladi.
  • Qiymatlar “,” (vergul) bilan ajratiladi va massivlar kvadrat qavs ichida saqlanadi.
JSON sintaksisi misoli

Quyidagi ikkita ma'lumotlar tuzilmasi JSON tomonidan qo'llab-quvvatlanadi:

  • Tartiblangan qiymatlar ro'yxati: Bu massiv, ro'yxat yoki vektor bo'lishi mumkin.
  • Nom/qiymat juftliklari to'plami: Turli xil kompyuter tillari ushbu ma'lumotlar tuzilmasini qo'llab-quvvatlaydi.

 

JSON (ob'ekt)

JSON sxemasi bu JSON ob'ekti bo'lib, u boshqa JSON ob'ektining turi va tuzilishini belgilaydi. JavaScript obyekt ifodasi JavaScript ish vaqti muhitida JSON obyektini ifodalashi mumkin. Yaroqli sxema ob'ektlarining ba'zi misollari quyidagilardir:

Diagramma

o'yinlar

{}

har qanday qiymat

{ turi: 'ob'ekt'}

JavaScript obyekti

{ turi: 'raqam'}

JavaScript raqami

{ turi: 'string'}

JavaScript qatori

Masalan:

Bo'sh bo'lgan yangi ob'ektni yaratish:

var JSON_Obj = {};

Yangi ob'ekt yaratish:

var JSON_Obj = new object()

JSON (XML bilan taqqoslash)

JSON va XML tildan mustaqil, inson oʻqishi mumkin boʻlgan formatlardir. Haqiqiy stsenariylarda ular ikkalasini ham yaratishi, o'qishi va dekodlashi mumkin. Quyidagi mezonlarga asoslanib, biz JSONni XML bilan solishtirishimiz mumkin.

Murakkablik

XML JSONga qaraganda murakkabroq bo'lgani uchun dasturchilar JSONni afzal ko'rishadi.

Massivlardan foydalanish

XML tuzilgan ma'lumotlarni ifodalash uchun ishlatiladi; ammo, XML massivlarni qo'llab-quvvatlamaydi, lekin JSON qo'llab-quvvatlaydi.

Ayrilash

JSON JavaScript-ning baholash funktsiyasi yordamida talqin qilinadi. eval JSON bilan foydalanilganda tasvirlangan ob'ektni qaytaradi.

 

misol:

 

JSON

XML

{

   "kompaniya": Ferrari,

   "nom": "GTS",

   "narx": 404000

}

 

 

Ferrari 

 

GTS 

 

404000 

 

JSON sxemasining afzalliklari

JSON inson va mashina tomonidan o'qiladigan tilni o'zgartirish uchun mo'ljallangan. Biroq, ba'zi nozik sozlashlarsiz, u ham bo'lishi mumkin emas. JSON sxemasi JSONni ham mashinalar, ham odamlar uchun tushunarli qilish afzalligiga ega.

JSON sxemasidan foydalanish mijoz tomonidan bir nechta yangilanishlarga bo'lgan ehtiyojni ham yo'q qiladi. Umumiy HTML kodlari ro'yxatini tuzish va keyin ularni mijoz tomonida amalga oshirish mijoz tomonini yaratishning odatiy, ammo noto'g'ri usuli hisoblanadi. API ilovalar. Biroq, bu eng zo'r strategiya emas, chunki server tomonidagi o'zgarishlar ba'zi funksiyalarning noto'g'ri ishlashiga olib kelishi mumkin.

JSON sxemasining asosiy afzalligi uning turli dasturlash tillari bilan mosligi, shuningdek, tekshirishning aniqligi va izchilligidir.

JSON sxemasi keng doiradagi brauzerlarni va operatsion tizimlar, shuning uchun JSON-da yozilgan ilovalar barchasini brauzerga mos qilish uchun ko'p harakat talab qilmaydi. Rivojlanish jarayonida ishlab chiquvchilar bir nechta brauzerlarni ko'rib chiqadilar, garchi JSON allaqachon imkoniyatlarga ega.

JSON har qanday hajmdagi maʼlumotlarni, jumladan, audio, video va boshqa ommaviy axborot vositalarini almashishning eng samarali usuli hisoblanadi. Bu JSON ma'lumotlarni massivlarda saqlashi bilan bog'liq, bu esa ma'lumotlarni uzatishni osonlashtiradi. Natijada, JSON onlayn API va ishlab chiqish uchun eng yaxshi fayl formatidir.

API-lar keng tarqalgan bo'lib, API tekshiruvi va sinovi tobora muhim ahamiyat kasb etadi deb taxmin qilish mantiqan to'g'ri. Vaqt o'tishi bilan JSON unchalik oson bo'lmasligini kutish ham haqiqatdir. Bu shuni anglatadiki, ma'lumotlaringiz uchun sxemaga ega bo'lish vaqt o'tishi bilan yanada muhimroq bo'ladi. JSON API bilan ishlash uchun standart fayl formati bo'lgani uchun JSON sxemasi API bilan ishlaydiganlar uchun yaxshi o'rinbosar hisoblanadi.

Google va Inkognito afsonasi

Google va Inkognito afsonasi

Google va Inkognito afsonasi 1-yilning 2024-aprelida Google Inkognito rejimida toʻplangan milliardlab maʼlumotlar yozuvlarini yoʻq qilish orqali daʼvoni hal qilishga rozi boʻldi.

Ko'proq o'qing "