Vodnik po shemi JSON

Shema JSON

Preden se lotimo sheme JSON, je pomembno vedeti, kakšna je razlika med shemo JSON in JSON.

JSON

JSON je okrajšava za JavaScript Object Notation in je format podatkov, neodvisen od jezika, ki ga API-ji uporabljajo za pošiljanje zahtev in odgovorov. JSON je enostaven za branje in pisanje za ljudi in stroje. JSON je besedilni format, ki ni vezan na jezik (neodvisen od jezika).

Shema JSON

Shema JSON je uporabno orodje za preverjanje strukture podatkov JSON. Če želite določiti strukturo JSON, uporabite obliko, ki temelji na JSON. Njegov namen je zagotoviti, da so podatki JSON sprejemljivi. Konvencija za podatke JSON naše aplikacije je lahko definirana s shemo.

Obstajajo trije glavni deli specifikacije sheme JSON:

Hipershema JSON:

JSON Hyper-Schema je jezik sheme JSON, ki se lahko uporablja za označevanje dokumentov JSON s hiperpovezavami in navodili za obdelavo in spreminjanje zunanjih virov JSON prek besedilnih okolij, kot je HTTP. Kliknite tukaj če želite izvedeti več o JSON Hyper-Schema.

Jedro sheme JSON:

Je nabor pravil za označevanje in potrjevanje dokumentov JSON. 

Jedro sheme JSON:

  • Opisuje obliko podatkov, ki jo trenutno imate. 
  • Preverja podatke, ki jih je mogoče uporabiti pri avtomatiziranem testiranju. 
  • Zagotavljanje točnosti podatkov, ki jih posredujejo stranke.  
  • Zagotavlja berljivo dokumentacijo za ljudi in stroje. 

Preverjanje sheme JSON:

Validacija, ki temelji na shemi JSON, nalaga omejitve glede strukture podatkov primerka. Po tem vse ključne besede, ki nimajo trditve Podatki, kot so opisni metapodatki in navedbe uporabe, se dodajo položaju primerka, ki izpolnjuje vse deklarirane omejitve. 

Orodje Newtonsoft JSON Schema Validator je orodje, ki ga lahko uporabljate neposredno v svojem brskalniku, brezplačno. S tem orodjem lahko preizkusite strukturo svoje sheme JSON. Ta stran vsebuje kontrolnike in pojasnila za lažji začetek. Na ta način je enostavno videti, kako izboljšati svojo strukturo JSON.

Naš objekt JSON lahko preverimo z orodjem za preverjanje sheme JSON:

Validator JSON brez napak

Imamo potrditev starosti (najmanj = 20 in največ = 40), kot je prikazano na zgornji sliki. Najdenih ni bilo nobenih napak.

Validator JSON z napako

Prikaže napako, če je bila potrditev starosti napačno vnesena.

Ustvarjanje sheme JSON

Oglejmo si primer sheme JSON, da vidimo, o čem govorimo. Osnovni objekt JSON, ki opisuje katalog izdelkov, je naslednji:

Primer JSON

Njegova shema JSON je lahko zapisana takole:

Rezultat sheme JSON

Shema JSON je dokument JSON in ta dokument MORA biti objekt. Ključne besede so člani/atributi objekta, ki jih določa shema JSON. »Ključne besede« v shemi JSON se nanašajo na del »ključa« kombinacije ključ/vrednost v objektu. Pisanje sheme JSON večinoma vključuje preslikavo določene »ključne besede« v vrednost znotraj predmeta. 

Oglejmo si podrobneje ključne besede, ki smo jih uporabili v našem primeru: 

Shema JSON, s katero je skladna shema vira, je zapisana s tem atributom. Ta shema je napisana v skladu s standardom osnutki v4, kot je določeno v "$ schema” ključna beseda. S tem preprečite, da bi se vaša shema vrnila na trenutno različico, ki je morda združljiva s starejšo ali pa ne.

"Naslov"In"opis” ključne besede so samo pojasnjevalne; ne nalagajo nobenih omejitev glede podatkov, ki se preverjajo. Ti dve ključni besedi opisujeta namen sheme: opisuje izdelek.

"tip” ključna beseda definira prvi robni pogoj naših podatkov JSON; mora biti predmet JSON. Če ne nastavimo tipa za vse sheme, koda ne bi delovala. Nekateri pogosti tipi so »število«, »logična vrednost«, »celo število«, »null«, »objekt«, »matrika«, »niz«.

 

Shemo JSON podpirajo naslednje knjižnice:

 

Jezik

Knjižnica

C

WJElement

Python

jschon

PHP

Opis sheme Json

JavaScript

prir

Go

gojsonschema

Kotlin

Medeja-validator

Ruby

JSONSchemer

JSON (Sintaksa)

Oglejmo si na kratko temeljno sintakso JSON. Sintaksa JSON je podnabor sintakse JavaScript, ki vključuje naslednje elemente:

  • Uporabljeni so pari ime/vrednost, ki predstavljajo podatke.
  • Predmeti so v zavitih oklepajih, vsako ime pa vodi ':' (dvopičje), pri čemer so pari vrednosti ločeni z “,” (vejica).
  • Vrednosti so ločene z »,« (vejica), nizi pa so v oglatih oklepajih.
Primer sintakse JSON

JSON podpira naslednji dve podatkovni strukturi:

  • Urejen seznam vrednosti: Lahko je niz, seznam ali vektor.
  • Zbirka parov ime/vrednost: Različni računalniški jeziki podpirajo to podatkovno strukturo.

 

JSON (predmet)

Shema JSON je objekt JSON, ki opisuje vrsto in strukturo drugega predmeta JSON. Izraz objekta JavaScript lahko predstavlja objekt JSON v okoljih izvajalnega okolja JavaScript. Nekaj ​​primerov veljavnih objektov sheme je naslednjih:

Shema

Tekme

{}

kakršna koli vrednost

{ type: 'object' }

objekt JavaScript

{ tip: 'število' }

številko JavaScript

{ tip: 'niz'}

niz JavaScript

Npr .:

Ustvarjanje novega predmeta, ki je prazen:

var JSON_Obj = {};

Ustvarjanje novega predmeta:

var JSON_Obj = nov objekt()

JSON (primerjava z XML)

JSON in XML sta formata, neodvisna od jezika, berljiva človeku. V scenarijih resničnega sveta lahko ustvarjajo, berejo in dekodirajo. Na podlagi naslednjih meril lahko JSON primerjamo z XML.

kompleksnost

Ker je XML bolj zapleten kot JSON, imajo programerji raje JSON.

Uporaba nizov

XML se uporablja za izražanje strukturiranih podatkov; vendar XML ne podpira nizov, JSON pa jih.

Razčlenitev

JSON se interpretira z uporabo JavaScriptove funkcije eval. eval vrne opisani objekt, če se uporablja z JSON.

 

primer:

 

JSON

XML

{

   "podjetje": Ferrari,

   "ime": "GTS",

   “Cena”: 404000

}

 

 

Ferrari 

 

GTS 

 

404000 

 

Prednosti sheme JSON

JSON je zasnovan za preusmerjanje v človeku in strojno berljivem jeziku. Vendar brez nekaj natančnega prilagajanja ne more biti ne eno ne drugo. Prednost sheme JSON je, da naredi JSON bolj razumljiv za stroje in ljudi.

Z uporabo sheme JSON prav tako ni več potrebe po posodobitvah na strani odjemalca. Izdelava seznama pogostih kod HTML in njihova nato implementacija na strani odjemalca je tipična, a netočna metoda za sestavo na strani odjemalca API aplikacije. Vendar to ni najboljša strategija, ker lahko spremembe na strani strežnika povzročijo okvaro nekaterih funkcij.

Glavna prednost sheme JSON je njena združljivost z različnimi programskimi jeziki, pa tudi natančnost in doslednost preverjanja.

Shema JSON podpira široko paleto brskalnikov in Operacijski sistemi, zato aplikacije, napisane v JSON, ne potrebujejo veliko truda, da bi bile vse združljive z brskalnikom. Med razvojem razvijalci upoštevajo več brskalnikov, čeprav JSON že ima zmožnosti.

JSON je najučinkovitejši način za skupno rabo podatkov katere koli velikosti, vključno z zvokom, videom in drugimi mediji. To je posledica dejstva, da JSON shranjuje podatke v nizih, kar olajša prenos podatkov. Zato je JSON najboljši format datoteke za spletne API-je in razvoj.

Ker so API-ji vse pogostejši, je logično domnevati, da bosta validacija in testiranje API-jev postajala vse pomembnejša. Prav tako je realno pričakovati, da JSON s časom verjetno ne bo veliko preprostejši. To pomeni, da bo shema za vaše podatke s časom postajala vse bolj kritična. Ker je JSON standardni format datoteke za delo z API-ji, je shema JSON dober nadomestek za tiste, ki delajo z API-ji.

Google in The Incognito Myth

Google in The Incognito Myth

Google in mit o načinu brez beleženja zgodovine 1. aprila 2024 se je Google strinjal s poravnavo tožbe z uničenjem milijard podatkovnih zapisov, zbranih v načinu brez beleženja zgodovine.

Preberite več »