JSON sxeminə bələdçi

JSON sxemi

JSON Şemasına keçməzdən əvvəl JSON və JSON Sxema arasındakı fərqi bilmək vacibdir.

JSON

JSON JavaScript Object Notation üçün qısadır və API-lərin sorğu və cavab göndərmək üçün istifadə etdiyi dildən asılı olmayan məlumat formatıdır. JSON həm insanlar, həm də maşınlar üçün oxumaq və yazmaq üçün sadədir. JSON dilə bağlı olmayan mətn əsaslı formatdır (Dildən müstəqil).

JSON sxemi

JSON Schema JSON məlumat strukturunu yoxlamaq üçün faydalı vasitədir. JSON strukturunu müəyyən etmək üçün JSON əsaslı formatdan istifadə edin. Onun məqsədi JSON məlumatlarının məqbul olmasını təmin etməkdir. Proqramımızın JSON məlumatları üçün konvensiya sxemdən istifadə etməklə müəyyən edilə bilər.

JSON Schema spesifikasiyasının üç əsas bölməsi var:

JSON Hiper-Sxem:

JSON Hyper-Schema, HTTP kimi mətn əsaslı mühitlər vasitəsilə xarici JSON resurslarının işlənməsi və dəyişdirilməsi üçün hiperlinklər və təlimatlarla JSON sənədlərini etiketləmək üçün istifadə edilə bilən JSON Sxema dilidir. basın burada JSON Hyper-Schema haqqında daha çox öyrənmək üçün.

JSON Sxem Əsası:

Bu, JSON sənədlərinin etiketlənməsi və təsdiqlənməsi üçün qaydalar toplusudur. 

JSON Sxem Əsası:

  • Hazırda malik olduğunuz məlumat formatını təsvir edir. 
  • Avtomatlaşdırılmış sınaqda istifadə edilə bilən məlumatları təsdiqləyir. 
  • Müştərilər tərəfindən verilən məlumatların düzgünlüyünü təmin etmək.  
  • Həm insanlar, həm də maşınlar üçün oxuna bilən sənədlər təqdim edir. 

JSON Sxem Təsdiqləmə:

JSON sxeminə əsaslanan doğrulama nümunə məlumatlarının strukturuna məhdudiyyətlər qoyur. Bundan sonra, təsdiqi olmayan hər hansı açar sözlər məlumat, təsviri metadata və istifadə göstəriciləri kimi bütün elan edilmiş məhdudiyyətlərə cavab verən nümunə mövqeyinə əlavə edilir. 

Newtonsoft-un JSON Schema Validator aləti birbaşa brauzerinizdə pulsuz istifadə edə biləcəyiniz bir vasitədir. JSON sxeminizin strukturunu yoxlamaq üçün bu alətdən istifadə edə bilərsiniz. Bu səhifədə sizə başlamaq üçün nəzarətlər və izahatlar var. Beləliklə, JSON strukturunuzu necə təkmilləşdirəcəyinizi görmək asandır.

JSON Sxema Doğrulama Alətindən istifadə edərək JSON Obyektimizi yoxlaya bilərik:

JSON Validator Xətası Pulsuz

Yuxarıdakı şəkildə göstərildiyi kimi bizdə yaş yoxlaması (minimum = 20 və maksimum = 40) var. Heç bir səhv tapılmadı.

Xəta ilə JSON Validator

Yaş doğrulaması səhv daxil edilibsə, xəta göstərdi.

JSON Sxemasının Yaradılması

Nə danışdığımızı görmək üçün JSON sxeminin nümunəsinə baxaq. Məhsul kataloqunu təsvir edən əsas JSON Obyekti aşağıdakı kimidir:

JSON nümunəsi

Onun JSON sxemi aşağıdakı kimi yazıla bilər:

JSON Sxem Nəticəsi

JSON Şeması JSON sənədidir və həmin sənəd obyekt olmalıdır. Açar sözlər JSON Schema tərəfindən müəyyən edilmiş obyekt üzvləri/atributlarıdır. JSON sxemindəki "açar sözlər" obyektdəki açar/dəyər birləşməsinin "açar" hissəsinə aiddir. JSON sxeminin yazılması, əksər hallarda müəyyən bir "açar sözü" obyekt daxilindəki dəyərlə əlaqələndirməyi əhatə edir. 

Nümunəmizdə istifadə etdiyimiz açar sözlərə daha yaxından nəzər salaq: 

Resursun sxeminin uyğun olduğu JSON sxemi bu atributla yazılır. Bu sxem, " tərəfindən müəyyən edildiyi kimi, qaralamalar v4 standartına uyğun olaraq yazılmışdır.$ şeması” açar sözü. Bu, sxeminizin köhnə versiyaya uyğun və ya uyğun olmayan cari versiyaya qayıtmasının qarşısını alır.

The "adı"Və"təsvir” açar sözlər sadəcə izahedicidir; yoxlanılan məlumatlara heç bir məhdudiyyət qoymurlar. Bu iki açar söz sxemin məqsədini təsvir edir: o, məhsulu təsvir edir.

The "növü” açar sözü JSON məlumatımızın ilk sərhəd şərtini müəyyən edir; bu JSON obyekti olmalıdır. Bütün sxemlər üçün növü təyin etməsək, kod işləməyəcək. Bəzi ümumi növlər "nömrə" "Boolean" "tam ədəd" "null" "obyekt" "massiv" "sətir"dir.

 

JSON Schema aşağıdakı kitabxanalar tərəfindən dəstəklənir:

 

Dil

kitabxana

C

WJElement

Python

jschon

PHP

Opis Json Schema

JavaScript

ajv

Go

gojsonschema

Kotlin

Medeia-validator

yaqut

JSONSchemer

JSON (Sintaksis)

Gəlin JSON-un əsas sintaksisinə qısa nəzər salaq. JSON sintaksisi aşağıdakı elementləri ehtiva edən JavaScript sintaksisinin alt dəstidir:

  • Məlumatları təmsil edən ad/dəyər cütlərindən istifadə olunur.
  • Obyektlər əyri mötərizədə saxlanılır və hər bir ad "," (vergül) ilə ayrılan dəyər cütləri ilə ':' (kolon nöqtəsi) işarəsi ilə aparılır.
  • Dəyərlər “,” (vergül) ilə ayrılır və massivlər kvadrat mötərizədə saxlanılır.
JSON Sintaksis Nümunəsi

Aşağıdakı iki məlumat strukturu JSON tərəfindən dəstəklənir:

  • Sıralanmış dəyərlər siyahısı: Bu massiv, siyahı və ya vektor ola bilər.
  • Ad/dəyər cütlərinin toplusu: Müxtəlif kompüter dilləri bu Məlumat Strukturunu dəstəkləyir.

 

JSON (Obyekt)

JSON sxemi fərqli JSON obyektinin növünü və strukturunu təsvir edən JSON obyektidir. JavaScript obyekt ifadəsi JavaScript işləmə mühitlərində JSON obyektini təmsil edə bilər. Etibarlı sxem obyektlərinin bəzi nümunələri aşağıdakılardır:

Şema

Kibrit

{}

istənilən dəyər

{növ: 'obyekt'}

JavaScript obyekti

{ yazın: 'nömrə' }

JavaScript nömrəsi

{növ: 'string'}

JavaScript sətri

Məsələn:

Boş olan yeni bir obyektin yaradılması:

var JSON_Obj = {};

Yeni Obyekt Yaradılması:

var JSON_Obj = yeni obyekt()

JSON (XML ilə müqayisə)

JSON və XML dildən asılı olmayan insan tərəfindən oxuna bilən formatlardır. Real dünya ssenarilərində onlar həm yarada, həm oxuya, həm də deşifrə edə bilərlər. Aşağıdakı meyarlara əsasən, biz JSON-u XML ilə müqayisə edə bilərik.

Mürəkkəblik

XML JSON-dan daha mürəkkəb olduğundan proqramçılar JSON-a üstünlük verirlər.

Massivlərin istifadəsi

XML strukturlaşdırılmış məlumatları ifadə etmək üçün istifadə olunur; lakin XML massivləri dəstəkləmir, lakin JSON dəstəkləyir.

Təhlil

JSON JavaScript-in qiymətləndirmə funksiyasından istifadə edərək şərh olunur. eval JSON ilə istifadə edildikdə təsvir olunan obyekti qaytarır.

 

Misal:

 

JSON

XML

{

   "şirkət": Ferrari,

   "ad": "GTS",

   “qiymət”: 404000

}

 

 

Ferrari 

 

GTS 

 

404000 

 

JSON Şemasının Üstünlükləri

JSON insan və maşın tərəfindən oxuna bilən dildən yayınmaq üçün nəzərdə tutulmuşdur. Lakin, bəzi incə tənzimləmə olmadan, heç biri ola bilməz. JSON Schema JSON-u həm maşınlar, həm də insanlar üçün daha başa düşülən etmək üstünlüyünə malikdir.

JSON Schema-dan istifadə həm də bir neçə müştəri tərəfində yeniləmə ehtiyacını aradan qaldırır. Ümumi HTML kodlarının siyahısını hazırlamaq və sonra onları müştəri tərəfində tətbiq etmək müştəri tərəfi qurmaq üçün tipik, lakin qeyri-dəqiq üsuldur. API proqramlar. Bununla belə, bu ən böyük strategiya deyil, çünki server tərəfindəki dəyişikliklər müəyyən funksiyaların nasazlığına səbəb ola bilər.

JSON Schema-nın əsas üstünlüyü onun müxtəlif proqramlaşdırma dilləri ilə uyğunluğu, eləcə də doğrulamanın dəqiqliyi və ardıcıllığıdır.

JSON sxemi geniş çeşidli brauzerləri və əməliyyat sistemləri, buna görə də JSON-da yazılmış proqramlar hamısını brauzerə uyğunlaşdırmaq üçün çox səy tələb etmir. İnkişaf zamanı tərtibatçılar bir neçə brauzeri nəzərdən keçirirlər, baxmayaraq ki, JSON artıq imkanlara malikdir.

JSON audio, video və digər media daxil olmaqla istənilən ölçülü məlumatı paylaşmağın ən səmərəli yoludur. Bu, JSON-un məlumatları massivlərdə saxlaması ilə əlaqədardır ki, bu da məlumatların ötürülməsini asanlaşdırır. Nəticədə, JSON onlayn API-lər və inkişaf üçün ən yaxşı fayl formatıdır.

API-lər daha geniş yayıldıqca, API-nin yoxlanılması və testinin getdikcə daha vacib olacağını güman etmək məntiqlidir. Vaxt keçdikcə JSON-un daha da sadələşməyəcəyini gözləmək də realdır. Bu o deməkdir ki, məlumatlarınız üçün bir sxemə sahib olmaq zaman keçdikcə daha da kritik olacaq. JSON API ilə işləmək üçün standart fayl formatı olduğundan, JSON Schema API ilə işləyənlər üçün yaxşı əvəzedicidir.

Google və Gizli Mif

Google və Gizli Mif

Google və İnkoqnito Mifi 1 aprel 2024-cü ildə Google Incognito rejimindən toplanmış milyardlarla məlumat qeydini məhv etməklə məhkəməni həll etməyə razılaşdı.

Daha çox oxu "