Opas JSON-skeemaan

JSON-skeema

Ennen kuin siirrymme JSON-skeemaan, on tärkeää tietää ero JSON- ja JSON-skeeman välillä.

JSON

JSON on lyhenne sanoista JavaScript Object Notation, ja se on kielestä riippumaton tietomuoto, jota API:t käyttävät pyyntöjen ja vastausten lähettämiseen. JSON on helppo lukea ja kirjoittaa sekä ihmisille että koneille. JSON on tekstipohjainen muoto, joka ei ole sidottu kieleen (kielestä riippumaton).

JSON-skeema

JSON Schema on hyödyllinen työkalu JSON-tietorakenteen tarkistamiseen. Voit määrittää JSON-rakenteen käyttämällä JSON-pohjaista muotoa. Sen tarkoituksena on varmistaa, että JSON-tiedot ovat hyväksyttäviä. Sovelluksemme JSON-tietojen käytäntö voidaan määrittää skeeman avulla.

JSON Schema -määrityksessä on kolme pääosiota:

JSON-hyperkaava:

JSON Hyper-Schema on JSON Schema -kieli, jota voidaan käyttää merkitsemään JSON-dokumentteja, joissa on hyperlinkkejä ja ohjeita ulkoisten JSON-resurssien käsittelyyn ja muuttamiseen tekstipohjaisten ympäristöjen, kuten HTTP:n, kautta. Klikkaus tätä saadaksesi lisätietoja JSON Hyper-Schemasta.

JSON-skeeman ydin:

Se on joukko JSON-dokumenttien merkitsemistä ja validointia koskevia sääntöjä. 

JSON-skeeman ydin:

  • Kuvaa tällä hetkellä käytössäsi olevaa tietomuotoa. 
  • Vahvistaa tiedot, joita voidaan käyttää automaattisessa testauksessa. 
  • Asiakkaiden antamien tietojen oikeellisuuden varmistaminen.  
  • Tarjoaa luettavaa dokumentaatiota sekä ihmisille että koneille. 

JSON-skeeman validointi:

JSON-skeemaan perustuva validointi asettaa rajoituksia ilmentymien tietojen rakenteelle. Sen jälkeen kaikki avainsanat, joilla ei ole väitettä tiedot, kuten kuvaavat metatiedot ja käyttömerkit, lisätään ilmentymäkohtaan, joka täyttää kaikki ilmoitetut rajoitukset. 

Newtonsoftin JSON Schema Validator -työkalu on työkalu, jota voit käyttää suoraan selaimessasi ilmaiseksi. Tämän työkalun avulla voit testata JSON-skeemasi rakennetta. Tämä sivu sisältää säätimiä ja selityksiä, joiden avulla pääset alkuun. Tällä tavalla on helppo nähdä, kuinka voit parantaa JSON-rakennettasi.

Voimme tarkistaa JSON-objektimme käyttämällä JSON Schema Validation Tool -työkalua:

JSON Validator Error Free

Meillä on iän vahvistus (minimi = 20 ja maksimi = 40), kuten yllä olevassa kuvassa näkyy. Virheitä ei löytynyt.

JSON-tarkistus, jossa on virhe

Se näytti virheilmoituksen, jos iän vahvistus oli syötetty väärin.

JSON-skeeman luominen

Katsotaanpa esimerkkiä JSON-skeemasta nähdäksesi, mistä puhumme. Tuoteluetteloa kuvaava JSON-perusobjekti on seuraava:

JSON-esimerkki

Sen JSON-skeema voidaan kirjoittaa seuraavasti:

JSON-kaavion tulos

JSON-skeema on JSON-dokumentti, ja sen TÄYTYY olla objekti. Avainsanat ovat JSON-skeeman määrittämiä objektin jäseniä/attribuutteja. JSON-skeeman "avainsanat" viittaavat objektin avain/arvo-yhdistelmän "avain"-osaan. JSON-skeeman kirjoittaminen sisältää suurimmaksi osaksi tietyn "avainsanan" yhdistämisen objektin arvoon. 

Tarkastellaanpa tarkemmin esimerkissämme käyttämiämme avainsanoja: 

Tämä attribuutti kirjoittaa muistiin JSON-skeeman, jota resurssin skeema noudattaa. Tämä skeema on kirjoitettu noudattaen luonnoksia v4 standardia, kuten "$ skeema”avainsana. Tämä estää skeemasi palautumisen nykyiseen versioon, joka voi olla yhteensopiva vanhempien kanssa tai ei.

"otsikko"Ja"kuvaus” avainsanat ovat vain selittäviä; ne eivät aseta mitään rajoituksia tarkistettaville tiedoille. Nämä kaksi avainsanaa kuvaavat skeeman tarkoitusta: se kuvaa tuotetta.

"tyyppi” avainsana määrittää JSON-tietojemme ensimmäisen rajaehdon; sen on oltava JSON-objekti. Jos emme aseta tyyppiä kaikille skeemoille, koodi ei toimisi. Jotkut yleisimmät tyypit ovat "luku" "Boolean" "kokonaisluku" "nolla" "objekti" "taulukko" "merkkijono".

 

Seuraavat kirjastot tukevat JSON-skeemaa:

 

Kieli

Kirjasto

C

WJElement

Python

jschon

PHP

Opis Json Schema

JavaScript

ajv

Go

gojsonschema

Kotlin

Medeia-validaattori

Rubiini

JSONSchemer

JSON (syntaksi)

Katsotaanpa lyhyesti JSONin perussyntaksia. JSON-syntaksi on JavaScript-syntaksin osajoukko, joka sisältää seuraavat elementit:

  • Käytetään nimi/arvo-pareja, jotka edustavat dataa.
  • Objektit ovat aaltosulkeissa, ja jokaisen nimen alussa on ':' (kaksoispiste) ja arvoparit erotetaan "," (pilkulla).
  • Arvot erotetaan "," (pilkulla) ja taulukot ovat hakasulkeissa.
JSON-syntaksiesimerkki

JSON tukee seuraavia kahta tietorakennetta:

  • Järjestetty arvolista: Se voi olla taulukko, luettelo tai vektori.
  • Nimi/arvo-parien kokoelma: Eri tietokonekielet tukevat tätä tietorakennetta.

 

JSON (objekti)

JSON-skeema on JSON-objekti, joka määrittelee eri JSON-objektin tyypin ja rakenteen. JavaScript-objektilauseke voi edustaa JSON-objektia JavaScript-ajonaikaisissa ympäristöissä. Joitakin esimerkkejä kelvollisista skeemaobjekteista ovat seuraavat:

Malli

Tulitikut

{}

mikä tahansa arvo

{ type: 'objekti' }

JavaScript-objekti

{ type: 'number' }

JavaScript-numero

{ type: 'string'}

JavaScript-merkkijono

Esim:

Uuden tyhjän objektin tekeminen:

var JSON_Obj = {};

Uuden objektin luominen:

var JSON_Obj = uusi objekti()

JSON (vertailu XML:ään)

JSON ja XML ovat kieliriippumattomia ihmisen luettavia muotoja. Tosimaailman skenaarioissa ne voivat sekä luoda, lukea että purkaa. Seuraavien kriteerien perusteella voimme verrata JSONia XML:ään.

Monimutkaisuus

Koska XML on monimutkaisempi kuin JSON, ohjelmoijat suosivat JSONia.

Arrayiden käyttö

XML:ää käytetään strukturoidun tiedon ilmaisemiseen; XML ei kuitenkaan tue taulukoita, mutta JSON tukee.

jäsennys

JSON tulkitaan JavaScriptin eval-funktiolla. eval palauttaa kuvatun objektin, kun sitä käytetään JSONin kanssa.

 

Esimerkiksi:

 

JSON

XML

{

   "yritys": Ferrari,

   "nimi": "GTS",

   "hinta": 404000

}

 

 

Ferrari 

 

GTS 

 

404000 XNUMX 

 

JSON-skeeman edut

JSON on suunniteltu taipumaan ihmisen ja koneen luettavalla kielellä. Ilman hienosäätöä se ei kuitenkaan voi olla kumpaakaan. JSON-skeemalla on se etu, että se tekee JSONista ymmärrettävämmän sekä koneille että ihmisille.

JSON Schema poistaa myös useiden asiakaspuolen päivitysten tarpeen. Tavallisista HTML-koodeista luettelon tekeminen ja niiden käyttöönotto asiakaspuolella on tyypillinen mutta epätarkka tapa rakentaa asiakaspuolen API sovelluksia. Tämä ei kuitenkaan ole paras strategia, koska palvelinpuolen muutokset voivat aiheuttaa tiettyjen toimintojen toimintahäiriöitä.

JSON Scheman tärkein etu on sen yhteensopivuus useiden ohjelmointikielten kanssa sekä validoinnin tarkkuus ja johdonmukaisuus.

JSON-skeema tukee monenlaisia ​​selaimia ja käyttöjärjestelmät, joten JSON-kielellä kirjoitetut sovellukset eivät vaadi paljon vaivaa tehdäkseen niistä kaikista selaimen yhteensopivia. Kehityksen aikana kehittäjät harkitsevat useita selaimia, vaikka JSONilla on jo valmiudet.

JSON on tehokkain tapa jakaa kaikenkokoisia tietoja, kuten ääntä, videota ja muuta mediaa. Tämä johtuu siitä, että JSON tallentaa tiedot taulukoihin, mikä helpottaa tiedonsiirtoa. Tämän seurauksena JSON on paras tiedostomuoto verkkosovellusliittymille ja -kehitykseen.

Sovellusliittymien yleistyessä on loogista olettaa, että API:n validoinnista ja testauksesta tulee yhä tärkeämpää. On myös realistista odottaa, että JSON ei todennäköisesti yksinkertaistu ajan myötä. Tämä tarkoittaa, että kaavion käyttäminen tiedoillesi tulee vain kriittisemmäksi ajan myötä. Koska JSON on sovellusliittymien kanssa työskennellyt standarditiedostomuoto, JSON Schema on hyvä korvike sovellusliittymien kanssa työskenteleville.

Google ja incognito-myytti

Google ja incognito-myytti

Google ja incognito-myytti Google suostui 1. huhtikuuta 2024 ratkaisemaan oikeusjutun tuhoamalla miljardeja incognito-tilasta kerättyjä tietueita.

Lue lisää »