Sprievodca schémou JSON

Schéma JSON

Predtým, ako sa pustíme do schémy JSON, je dôležité poznať rozdiel medzi schémou JSON a JSON.

JSON

JSON je skratka pre JavaScript Object Notation a je to jazykovo nezávislý dátový formát, ktorý API používajú na odosielanie požiadaviek a odpovedí. JSON je jednoduchý na čítanie a zápis pre ľudí aj stroje. JSON je textový formát, ktorý nie je viazaný na jazyk (jazykovo nezávislý).

Schéma JSON

JSON Schema je užitočný nástroj na overenie dátovej štruktúry JSON. Ak chcete špecifikovať štruktúru JSON, použite formát založený na JSON. Jeho účelom je zabezpečiť, aby boli údaje JSON prijateľné. Konvenciu pre údaje JSON našej aplikácie je možné definovať pomocou schémy.

Špecifikácia schémy JSON má tri hlavné časti:

Hyper-Schema JSON:

JSON Hyper-Schema je jazyk schémy JSON, ktorý možno použiť na označenie dokumentov JSON hypertextovými odkazmi a pokynmi na spracovanie a zmenu externých zdrojov JSON prostredníctvom textových prostredí, ako je HTTP. Kliknite tu sa dozviete viac o JSON Hyper-Schema.

Jadro schémy JSON:

Ide o súbor pravidiel pre označovanie a overovanie dokumentov JSON. 

Jadro schémy JSON:

  • Popisuje formát údajov, ktorý momentálne máte. 
  • Overuje údaje, ktoré možno použiť pri automatizovanom testovaní. 
  • Zabezpečenie správnosti údajov poskytnutých klientmi.  
  • Poskytuje čitateľnú dokumentáciu pre ľudí aj pre stroje. 

Overenie schémy JSON:

Overenie založené na schéme JSON obmedzuje štruktúru údajov inštancie. Potom všetky kľúčové slová, ktoré nemajú tvrdenie informácie, ako sú popisné metadáta a indikácie použitia, sa pridajú do pozície inštancie, ktorá spĺňa všetky deklarované obmedzenia. 

Nástroj JSON Schema Validator od Newtonsoftu je nástroj, ktorý môžete bezplatne používať priamo vo svojom prehliadači. Tento nástroj môžete použiť na testovanie štruktúry vašej schémy JSON. Táto stránka obsahuje ovládacie prvky a vysvetlenia, ktoré vám pomôžu začať. Týmto spôsobom je ľahké zistiť, ako zlepšiť štruktúru JSON.

Náš objekt JSON môžeme skontrolovať pomocou nástroja na overenie schémy JSON:

Validátor JSON bez chýb

Máme overenie veku (minimum = 20 a maximum = 40), ako je znázornené na obrázku vyššie. Nenašli sa žiadne chyby.

Validátor JSON s chybou

Ak bolo overenie veku zadané nesprávne, zobrazila sa chyba.

Vytvorenie schémy JSON

Pozrime sa na príklad schémy JSON, aby sme videli, o čom hovoríme. Základný objekt JSON popisujúci katalóg produktov je nasledujúci:

Príklad JSON

Jeho schéma JSON môže byť napísaná takto:

Výsledok schémy JSON

Schéma JSON je dokument JSON a tento dokument MUSÍ byť objekt. Kľúčové slová sú členmi/atribútmi objektu špecifikovanými schémou JSON. „Kľúčové slová“ v schéme JSON označujú „kľúčovú“ časť kombinácie kľúč/hodnota v objekte. Písanie schémy JSON väčšinou zahŕňa mapovanie konkrétneho „kľúčového slova“ na hodnotu v rámci objektu. 

Pozrime sa bližšie na kľúčové slová, ktoré sme použili v našom príklade: 

Schéma JSON, ktorej vyhovuje schéma zdroja, je zapísaná týmto atribútom. Táto schéma je napísaná podľa štandardu drafts v4, ako je špecifikované v dokumente „$ schémakľúčové slovo. To zabráni tomu, aby sa vaša schéma vrátila späť na aktuálnu verziu, ktorá môže, ale nemusí byť kompatibilná so staršou.

"titul"A"opis” kľúčové slová sú len vysvetľujúce; nekladú žiadne obmedzenia na kontrolované údaje. Tieto dve kľúčové slová popisujú účel schémy: opisuje produkt.

"typKľúčové slovo ” definuje prvú hraničnú podmienku našich údajov JSON; musí to byť objekt JSON. Ak nenastavíme typ pre všetky schémy, kód by nefungoval. Niektoré bežné typy sú „číslo“, „logická hodnota“, „celé číslo“, „null“, „objekt“, „pole“, „reťazec“.

 

Schéma JSON je podporovaná nasledujúcimi knižnicami:

 

Jazyk

knižnica

C

WJElement

Pytón

jschon

PHP

Popis Json Schema

JavaScript

ajv

Go

gojsonschema

kotlín

Medeia-validátor

rubín

JSONSchemer

JSON (syntax)

Poďme sa v krátkosti pozrieť na základnú syntax JSON. Syntax JSON je podmnožinou syntaxe JavaScriptu, ktorá obsahuje nasledujúce prvky:

  • Používajú sa dvojice názov/hodnota, ktoré predstavujú údaje.
  • Objekty sú držané v zložených zátvorkách a každý názov je vedený „:“ (dvojbodkou), pričom páry hodnôt sú oddelené „,“ (čiarkou).
  • Hodnoty sú oddelené „,“ (čiarkou) a polia sú v hranatých zátvorkách.
Príklad syntaxe JSON

JSON podporuje nasledujúce dve dátové štruktúry:

  • Usporiadaný zoznam hodnôt: Môže to byť pole, zoznam alebo vektor.
  • Zbierka párov názov/hodnota: Túto dátovú štruktúru podporujú rôzne počítačové jazyky.

 

JSON (objekt)

Schéma JSON je objekt JSON, ktorý načrtáva typ a štruktúru iného objektu JSON. Výraz objektu JavaScript môže predstavovať objekt JSON v prostrediach spustenia JavaScriptu. Niektoré príklady platných objektov schémy sú nasledovné:

Schéma

Zápasy

{}

akúkoľvek hodnotu

{ type: 'objekt' }

objekt JavaScript

{ type: 'číslo' }

číslo JavaScript

{ type: 'string'}

reťazec JavaScript

napr:

Vytvorenie nového objektu, ktorý je prázdny:

var JSON_Obj = {};

Vytvorenie nového objektu:

var JSON_Obj = nový objekt()

JSON (porovnanie s XML)

JSON a XML sú jazykovo nezávislé formáty čitateľné pre ľudí. V scenároch reálneho sveta môžu vytvárať, čítať a dekódovať. Na základe nasledujúcich kritérií môžeme porovnať JSON s XML.

zložitosť

Pretože XML je zložitejšie ako JSON, programátori uprednostňujú JSON.

Použitie polí

XML sa používa na vyjadrenie štruktúrovaných údajov; XML však polia nepodporuje, ale JSON áno.

rozbor

JSON sa interpretuje pomocou funkcie eval JavaScriptu. eval pri použití s ​​JSON vráti opísaný objekt.

 

Príklad:

 

JSON

XML

{

   "spoločnosť": Ferrari,

   "name": "GTS",

   "cena": 404000 XNUMX

}

 

 

Ferrari 

 

GTS 

 

404000 XNUMX 

 

Výhody schémy JSON

JSON je navrhnutý tak, aby sa odchýlil v jazyku čitateľnom pre ľudí a strojmi. Bez určitého doladenia to však nemôže byť ani jedno ani druhé. Schéma JSON má tú výhodu, že robí JSON zrozumiteľnejším pre stroje aj pre ľudí.

Použitie schémy JSON tiež odstraňuje potrebu niekoľkých aktualizácií na strane klienta. Vytvorenie zoznamu bežných HTML kódov a ich následná implementácia na strane klienta je typická, ale nepresná metóda vytvárania na strane klienta. API aplikácie. Toto však nie je najlepšia stratégia, pretože zmeny na strane servera môžu spôsobiť nefunkčnosť určitých funkcií.

Hlavnou výhodou schémy JSON je jej kompatibilita s rôznymi programovacími jazykmi, ako aj presnosť a konzistentnosť overovania.

Schéma JSON podporuje širokú škálu prehliadačov a operačné systémy, preto aplikácie napísané v JSON nevyžadujú veľa úsilia, aby boli všetky kompatibilné s prehliadačom. Počas vývoja vývojári zvažujú niekoľko prehliadačov, aj keď JSON už možnosti má.

JSON je najefektívnejší spôsob zdieľania údajov akejkoľvek veľkosti vrátane zvuku, videa a iných médií. Je to spôsobené tým, že JSON ukladá dáta do polí, čo uľahčuje prenos dát. Výsledkom je, že JSON je najlepší formát súboru pre online API a vývoj.

Ako sa API stáva bežnejším, je logické predpokladať, že validácia a testovanie API bude čoraz dôležitejšie. Je tiež realistické očakávať, že JSON pravdepodobne nebude oveľa jednoduchší, ako plynie čas. To znamená, že mať schému pre vaše údaje bude s pribúdajúcim časom len kritickejšie. Pretože JSON je štandardný formát súboru na prácu s rozhraniami API, schéma JSON je dobrou náhradou za tých, ktorí pracujú s rozhraniami API.

Google a mýtus inkognito

Google a mýtus inkognito

Google a mýtus inkognito 1. apríla 2024 spoločnosť Google súhlasila s urovnaním súdneho sporu zničením miliárd údajových záznamov zhromaždených v režime inkognito.

Čítajte viac »