JSON shēmas ceļvedis

JSON shēma

Pirms iedziļināties JSON shēmā, ir svarīgi zināt atšķirību starp JSON un JSON shēmu.

JSON

JSON ir saīsinājums no JavaScript Object Notation, un tas ir no valodas neatkarīgs datu formāts, ko API izmanto, lai nosūtītu pieprasījumus un atbildes. JSON ir vienkārši lasāms un rakstāms gan cilvēkiem, gan iekārtām. JSON ir uz tekstu balstīts formāts, kas nav saistīts ar valodu (no valodas neatkarīgs).

JSON shēma

JSON shēma ir noderīgs rīks JSON datu struktūras pārbaudei. Lai norādītu JSON struktūru, izmantojiet uz JSON balstītu formātu. Tās mērķis ir nodrošināt, ka JSON dati ir pieņemami. Mūsu lietojumprogrammas JSON datu konvenciju var definēt, izmantojot shēmu.

JSON shēmas specifikācijai ir trīs galvenās sadaļas:

JSON hipershēma:

JSON Hyper-Schema ir JSON shēmas valoda, ko var izmantot, lai apzīmētu JSON dokumentus ar hipersaitēm un instrukcijām ārējo JSON resursu apstrādei un mainīšanai, izmantojot teksta vidēs, piemēram, HTTP. Klikšķis šeit lai uzzinātu vairāk par JSON Hyper-Schema.

JSON shēmas kodols:

Tas ir noteikumu kopums JSON dokumentu marķēšanai un apstiprināšanai. 

JSON shēmas kodols:

  • Apraksta pašlaik pieejamo datu formātu. 
  • Validē datus, ko var izmantot automatizētajā testēšanā. 
  • Klientu sniegto datu precizitātes nodrošināšana.  
  • Nodrošina lasāmu dokumentāciju gan cilvēkiem, gan mašīnām. 

JSON shēmas validācija:

Validācija, kuras pamatā ir JSON shēma, nosaka ierobežojumus instances datu struktūrai. Pēc tam visi atslēgvārdi, kuriem nav apgalvojuma informācija, piemēram, aprakstošie metadati un lietošanas norādes, tiek pievienoti instances pozīcijai, kas atbilst visiem deklarētajiem ierobežojumiem. 

Newtonsoft JSON shēmas pārbaudītāja rīks ir rīks, ko varat bez maksas izmantot tieši savā pārlūkprogrammā. Varat izmantot šo rīku, lai pārbaudītu savas JSON shēmas struktūru. Šajā lapā ir ietvertas vadīklas un paskaidrojumi, lai sāktu darbu. Tādā veidā ir viegli saprast, kā uzlabot JSON struktūru.

Mēs varam pārbaudīt savu JSON objektu, izmantojot JSON shēmas validācijas rīku:

JSON Validator bez kļūdām

Mums ir vecuma validācija (minimālais = 20 un maksimālais = 40), kā parādīts attēlā iepriekš. Kļūdas netika atrastas.

JSON pārbaudītājs ar kļūdu

Ja vecuma validācija tika ievadīta nepareizi, tika parādīta kļūda.

JSON shēmas izveide

Apskatīsim JSON shēmas piemēru, lai redzētu, par ko mēs runājam. Pamata JSON objekts, kas apraksta produktu katalogu, ir šāds:

JSON piemērs

Tās JSON shēmu var rakstīt šādi:

JSON shēmas rezultāts

JSON shēma ir JSON dokuments, un šim dokumentam OBLIGĀTI ir jābūt objektam. Atslēgvārdi ir objekta dalībnieki/atribūti, ko nosaka JSON shēma. “Atslēgvārdi” JSON shēmā attiecas uz atslēgas/vērtības kombinācijas “atslēgas” daļu objektā. JSON shēmas rakstīšana lielākoties ietver noteikta “atslēgvārda” kartēšanu ar vērtību objektā. 

Sīkāk apskatīsim atslēgvārdus, ko izmantojām savā piemērā: 

JSON shēmu, kurai atbilst resursa shēma, pieraksta šis atribūts. Šī shēma ir uzrakstīta, ievērojot standarta v4 projektus, kā norādīts “$ shēma” atslēgvārds. Tas neļaus jūsu shēmai atgriezties pie pašreizējās versijas, kas var būt vai nav saderīga ar vecāku versiju.

"virsraksts"Un"Detalizēta informācija:” atslēgvārdi ir tikai paskaidrojoši; tie neuzliek nekādus ierobežojumus pārbaudāmajiem datiem. Šie divi atslēgvārdi raksturo shēmas mērķi: tā apraksta produktu.

"tips” atslēgvārds definē mūsu JSON datu pirmo robežnosacījumu; tam ir jābūt JSON objektam. Ja mēs neiestatīsim veidu visām shēmām, kods nedarbosies. Daži izplatītākie veidi ir “skaitlis”, “būla”, “vesels skaitlis”, “nulle”, “objekts”, “masīvs”, “virkne”.

 

JSON shēmu atbalsta šādas bibliotēkas:

 

Valoda

bibliotēka

C

WJElement

Pitons

jschon

PHP

Opis Json Shema

JavaScript

ajv

Go

gojsonschema

Kotlin

Medeja-validators

rubīns

JSONSchemer

JSON (sintakse)

Īsi apskatīsim JSON pamatsintaksi. JSON sintakse ir JavaScript sintakses apakškopa, kas ietver šādus elementus:

  • Tiek izmantoti nosaukumu/vērtību pāri, kas atspoguļo datus.
  • Objekti tiek turēti krokainās iekavās, un katrs nosaukums ir aizvests ar “:” (kols), vērtību pārus atdalot ar “,” (komatu).
  • Vērtības tiek atdalītas ar “,” (komatu), un masīvi tiek turēti kvadrātiekavās.
JSON sintakses piemērs

JSON atbalsta šādas divas datu struktūras:

  • Sakārtots vērtību saraksts: Tas var būt masīvs, saraksts vai vektors.
  • Vārdu/vērtību pāru kolekcija: Šo datu struktūru atbalsta dažādas datoru valodas.

 

JSON (objekts)

JSON shēma ir JSON objekts, kas iezīmē cita JSON objekta veidu un struktūru. JavaScript objekta izteiksme var attēlot JSON objektu JavaScript izpildlaika vidēs. Daži derīgu shēmas objektu piemēri ir šādi:

shēma

Sērkociņi

{}

jebkura vērtība

{tips: 'objekts'}

JavaScript objekts

{tips: 'numurs'}

JavaScript numurs

{type: 'string'}

JavaScript virkne

Piemēram:

Izveidojiet jaunu objektu, kas ir tukšs:

var JSON_Obj = {};

Jauna objekta izveide:

var JSON_Obj = jauns objekts()

JSON (salīdzinājums ar XML)

JSON un XML ir no valodas neatkarīgi, cilvēkam lasāmi formāti. Reālās pasaules scenārijos viņi var gan izveidot, gan lasīt, gan atšifrēt. Pamatojoties uz tālāk norādītajiem kritērijiem, mēs varam salīdzināt JSON ar XML.

sarežģītība

Tā kā XML ir sarežģītāks nekā JSON, programmētāji dod priekšroku JSON.

Masīvu izmantošana

XML tiek izmantots, lai izteiktu strukturētus datus; tomēr XML neatbalsta masīvus, bet JSON to atbalsta.

Parsēšana

JSON tiek interpretēts, izmantojot JavaScript eval funkciju. eval atgriež aprakstīto objektu, ja to izmanto kopā ar JSON.

 

Piemērs:

 

JSON

XML

{

   “uzņēmums”: Ferrari,

   “nosaukums”: “GTS”,

   “Cena”: 404000 XNUMX

}

 

 

Ferrari 

 

GTS 

 

404000 XNUMX 

 

JSON shēmas priekšrocības

JSON ir izstrādāts, lai novirzītu cilvēku un mašīnlasāmā valodā. Tomēr bez precīzas pielāgošanas tas nevar būt ne viens, ne otrs. JSON shēmas priekšrocība ir tā, ka JSON ir saprotamāka gan iekārtām, gan cilvēkiem.

Izmantojot JSON shēmu, tiek novērsta arī nepieciešamība pēc vairākiem klienta puses atjauninājumiem. Izplatīto HTML kodu saraksta izveidošana un pēc tam to ieviešana klienta pusē ir tipiska, bet neprecīza metode klienta puses konstruēšanai. API lietotnes. Tomēr šī nav labākā stratēģija, jo servera puses izmaiņas var izraisīt noteiktu funkciju darbības traucējumus.

Galvenā JSON shēmas priekšrocība ir tās savietojamība ar dažādām programmēšanas valodām, kā arī validācijas precizitāte un konsekvence.

JSON shēma atbalsta plašu pārlūkprogrammu klāstu un operētājsistēmas, tāpēc lietotnēm, kas rakstītas JSON, nav jāpieliek lielas pūles, lai tās visas būtu saderīgas ar pārlūkprogrammu. Izstrādes laikā izstrādātāji apsver vairākas pārlūkprogrammas, lai gan JSON jau ir iespējas.

JSON ir visefektīvākais veids, kā koplietot jebkura izmēra datus, tostarp audio, video un citus multivides datus. Tas ir saistīts ar faktu, ka JSON datus glabā masīvos, kas atvieglo datu pārraidi. Rezultātā JSON ir labākais faila formāts tiešsaistes API un izstrādei.

Tā kā API kļūst arvien izplatītāka, ir loģiski pieņemt, ka API validācija un testēšana kļūs arvien svarīgāka. Ir arī reāli sagaidīt, ka laika gaitā JSON, visticamāk, nekļūs daudz vienkāršāks. Tas nozīmē, ka datu shēmas izmantošana laika gaitā kļūs arvien svarīgāka. Tā kā JSON ir standarta faila formāts darbam ar API, JSON shēma ir labs aizstājējs tiem, kas strādā ar API.

Google un inkognito mīts

Google un inkognito mīts

Google un inkognito mīts 1. gada 2024. aprīlī Google piekrita izšķirt tiesas prāvu, iznīcinot miljardiem inkognito režīmā savākto datu ierakstu.

Lasīt vairāk »