Gid pou JSON Schema

Chema JSON

Anvan nou antre nan JSON Schema, li enpòtan pou konnen diferans ki genyen ant JSON ak JSON Schema.

JSON

JSON se kout pou JavaScript Object Notation, epi li se yon fòma done endepandan lang ke API yo itilize pou voye demann ak repons. JSON se senp pou li ak ekri pou moun ak machin sanble. JSON se yon fòma ki baze sou tèks ki pa lye ak lang (Language independent).

Chema JSON

JSON Schema se yon zouti itil pou verifye estrikti done JSON. Pou presize estrikti JSON, sèvi ak yon fòma ki baze sou JSON. Objektif li se asire ke done JSON yo akseptab. Konvansyon pou done JSON aplikasyon nou an ka defini lè l sèvi avèk chema.

Gen twa seksyon prensipal nan spesifikasyon JSON Schema:

JSON Hyper-Schema:

JSON Hyper-Schema se yon lang JSON Schema ki ka itilize pou make dokiman JSON ak lyen ak enstriksyon pou trete ak chanje resous JSON ekstèn atravè anviwònman ki baze sou tèks tankou HTTP. Klike sou isit la pou aprann plis sou JSON Hyper-Schema.

Nwayo chema JSON:

Li se yon seri règ pou make ak valide dokiman JSON. 

Nwayo chema JSON:

  • Dekri fòma done ou genyen kounye a. 
  • Valide done ki ka itilize nan tès otomatik yo. 
  • Asire presizyon nan done yo bay kliyan yo.  
  • Bay dokiman lizib pou tou de moun ak machin. 

Validasyon chema JSON:

Validasyon ki baze sou JSON Schema enpoze limit sou estrikti done egzanp yo. Apre sa, nenpòt mo kle ki pa afimasyon enfòmasyon, tankou metadata deskriptif ak endikasyon itilizasyon, yo ajoute nan yon pozisyon egzanp ki satisfè tout kontrent deklare. 

Zouti JSON Schema Validator Newtonsoft a se yon zouti ou ka itilize dirèkteman nan navigatè w la, gratis. Ou ka itilize zouti sa a pou teste estrikti chema JSON ou a. Paj sa a gen kontwòl ak eksplikasyon pou fè w kòmanse. Nan fason sa a, li fasil pou wè ki jan yo amelyore estrikti JSON ou.

Nou ka tcheke Objè JSON nou an lè l sèvi avèk Zouti Validasyon Schema JSON:

Erè JSON Validator gratis

Nou gen validation laj (minimòm = 20 ak maksimòm = 40) jan yo montre nan figi ki anwo a. Pa te jwenn okenn erè.

Validatè JSON ak erè

Li te montre yon erè si validation laj la te antre mal.

Kreyasyon yon chema JSON

Ann gade yon egzanp JSON Schema pou wè de sa n ap pale. Yon objè JSON debaz ki dekri yon katalòg pwodwi se jan sa a:

Egzanp JSON

Chema JSON li a ka ekri jan sa a:

JSON Schema Rezilta

Yon Schema JSON se yon dokiman JSON, epi dokiman sa a DWE yon objè. Mo kle yo se manm objè/atribi ki espesifye pa JSON Schema. "Mo kle" nan Schema JSON refere a pati "kle" nan yon konbinezon kle/valè nan yon objè. Ekri yon chema JSON enplike nan kat yon "mo kle" patikilye nan yon valè nan yon objè pou pati ki pi. 

Ann pran yon gade pi pre nan mo kle nou te itilize nan egzanp nou an: 

Se atribi sa a ekri chema JSON ak chema resous la konfòme. Schema sa a ekri swivan proje v4 estanda, jan sa espesifye nan "$ chema” mo kle. Sa a anpeche chema ou a tounen nan vèsyon aktyèl la, ki ka oswa pa ka konpatib ak pi gran.

"Lantit"Ak"deskripsyon” mo kle yo jis eksplikasyon; yo pa enpoze okenn limit sou done yo ap tcheke. De mo kle sa yo dekri objektif chema a: li dekri yon pwodwi.

"Lankalite” mo kle defini premye kondisyon fwontyè done JSON nou an; li dwe yon Objè JSON. Si nou pa mete kalite pou tout chema, kòd la pa ta travay. Gen kèk kalite komen yo se "nimewo" "Boolean" "nonb antye relatif" "nil" "objè" "etalaj" "fisèl".

 

JSON Schema sipòte pa bibliyotèk sa yo:

 

Lang

Bibliyotèk

C

WJElement

Piton

jschon

PHP

Dekri teren Json Schema

JavaScript

ajv

Go

gojsonschema

Kotlin

Medya-validator

Ruby

JSONSchemer

JSON (sentaks)

Ann pran yon ti kout je sou sentaks fondamantal JSON la. Sentaks JSON se yon pati nan sentaks JavaScript ki gen ladan eleman sa yo:

  • Yo itilize pè non/valè ki reprezante done.
  • Objè yo kenbe nan akolad boukle, epi chak non dirije pa yon ':' (kolon), ak pè valè separe pa "," (vigil).
  • Valè yo separe pa "," (vigil) ak etalaj yo kenbe nan parantèz kare.
Egzanp sentaks JSON

JSON sipòte de estrikti done sa yo:

  • Lis valè òdone: Li kapab yon etalaj, yon lis, oswa yon vektè.
  • Koleksyon pè non/valè: Diferan langaj òdinatè sipòte Estrikti Done sa a.

 

JSON (Objè)

Yon chema JSON se yon objè JSON ki dekri kalite ak estrikti yon objè JSON diferan. Yon ekspresyon objè JavaScript ka reprezante yon objè JSON nan anviwònman ègzekutabl JavaScript. Kèk egzanp objè chema valab yo se jan sa a:

Schema

Alimèt

{}

nenpòt valè

{ jan de: 'objè'}

yon objè JavaScript

{ jan de: 'nimewo'}

yon nimewo JavaScript

{type: 'string'}

yon kòd JavaScript

Egzanp:

Fè yon nouvo objè ki vid:

var JSON_Obj = {};

Nouvo kreyasyon objè:

var JSON_Obj = nouvo objè ()

JSON (Konparezon ak XML)

JSON ak XML se fòma ki endepandan lang pou moun lizib. Nan senaryo mond reyèl la, yo ka tou de kreye, li, ak dekode. Dapre kritè sa yo, nou ka konpare JSON ak XML.

Konplèksite

Paske XML pi konplèks pase JSON, pwogramè yo prefere JSON.

Itilizasyon etalaj

XML itilize pou eksprime done estriktire; sepandan, XML pa sipòte etalaj, men JSON fè.

Analize

JSON entèprete lè l sèvi avèk fonksyon eval JavaScript a. eval retounen objè ki dekri a lè yo itilize ak JSON.

 

Egzanp:

 

JSON

XML

{

   "konpayi": Ferrari,

   "non": "GTS",

   "pri": 404000

}

 

 

Ferrari 

 

GTS 

 

404000 

 

Avantaj JSON Schema

JSON fèt pou devye nan yon lang moun ak machin-lizib. Sepandan, san kèk amann-akor, li kapab ni. JSON Schema gen avantaj pou fè JSON pi konprann pou tou de machin ak moun.

Sèvi ak JSON Schema tou retire bezwen pou plizyè mizajou bò kliyan. Fè yon lis kòd HTML komen ak Lè sa a, mete ann aplikasyon yo sou bò kliyan an se yon metòd tipik men kòrèk pou konstwi kliyan-bò. API apps. Sepandan, sa a se pa pi gwo estrateji a paske chanjman sou bò sèvè a ta ka lakòz fonksyonalite sèten fonksyone byen.

Avantaj prensipal JSON Schema se konpatibilite li ak yon varyete lang pwogramasyon, osi byen ke presizyon ak konsistans nan validation.

Schema JSON sipòte yon pakèt navigatè ak sistèm opere, Se poutèt sa aplikasyon ki ekri nan JSON pa pran anpil efò pou fè yo tout navigatè konpatib. Pandan devlopman, devlopè yo konsidere plizyè navigatè, byenke JSON deja gen kapasite yo.

JSON se fason ki pi efikas pou pataje done nenpòt gwosè, tankou odyo, videyo, ak lòt medya. Sa a se akòz lefèt ke JSON estoke done nan etalaj, ki fè transmisyon done pi fasil. Kòm yon rezilta, JSON se pi bon fòma dosye pou API sou entènèt ak devlopman.

Kòm API yo ap vin pi komen, li lojik pou asime ke validasyon API ak tès yo ap vin de pli zan pli enpòtan. Li reyalis tou pou atann ke JSON pa gen anpil chans vin pi senp kòm tan ap pase. Sa a vle di ke gen yon chema pou done ou yo pral sèlman vin pi enpòtan ak tan ap pase. Paske JSON se fòma fichye estanda pou travay ak API, JSON Schema se yon bon ranplasan pou moun k ap travay ak API.