Canllaw i Sgema JSON

Sgema JSON

Cyn i ni fynd i mewn i Sgema JSON, mae'n bwysig gwybod y gwahaniaeth rhwng Sgema JSON a JSON.

JSON

Mae JSON yn fyr ar gyfer JavaScript Object Notation, ac mae'n fformat data sy'n annibynnol ar iaith y mae APIs yn ei ddefnyddio i anfon ceisiadau ac atebion. Mae JSON yn syml i'w ddarllen a'i ysgrifennu ar gyfer pobl a pheiriannau fel ei gilydd. Mae JSON yn fformat testun nad yw wedi'i rwymo i iaith (Iaith annibynnol).

Sgema JSON

Mae Sgema JSON yn offeryn defnyddiol ar gyfer gwirio strwythur data JSON. I nodi strwythur JSON, defnyddiwch fformat sy'n seiliedig ar JSON. Ei ddiben yw sicrhau bod data JSON yn dderbyniol. Gall y confensiwn ar gyfer data JSON ein rhaglen gael ei ddiffinio gan ddefnyddio sgema.

Mae tair prif adran i fanyleb Sgema JSON:

Uwch-sgema JSON:

Mae JSON Hyper-Schema yn iaith sgema JSON y gellir ei defnyddio i labelu dogfennau JSON gyda hyperddolenni a chyfarwyddiadau ar gyfer prosesu a newid adnoddau JSON allanol trwy amgylcheddau testun fel HTTP. Cliciwch yma i ddysgu mwy am JSON Hyper-Schema.

Craidd sgema JSON:

Mae'n set o reolau ar gyfer labelu a dilysu dogfennau JSON. 

Craidd sgema JSON:

  • Yn disgrifio'r fformat data sydd gennych ar hyn o bryd. 
  • Yn dilysu data y gellir ei ddefnyddio mewn profion awtomataidd. 
  • Sicrhau cywirdeb y data a roddir gan gleientiaid.  
  • Yn darparu dogfennaeth ddarllenadwy ar gyfer bodau dynol a pheiriannau. 

Dilysiad Sgema JSON:

Mae dilysu yn seiliedig ar Sgema JSON yn gosod cyfyngiadau ar strwythur data enghreifftiau. Ar ôl hynny, unrhyw eiriau allweddol yn cael di-honiad gwybodaeth, megis metadata disgrifiadol ac arwyddion defnydd, yn cael eu hychwanegu at sefyllfa enghreifftiol sy'n bodloni'r holl gyfyngiadau a ddatganwyd. 

Offeryn y gallwch ei ddefnyddio'n uniongyrchol yn eich porwr, yn rhad ac am ddim, yw teclyn JSON Schema Validator gan Newtonsoft. Gallwch ddefnyddio'r offeryn hwn i brofi strwythur eich sgema JSON. Mae'r dudalen hon yn cynnwys rheolaethau ac esboniadau i'ch rhoi ar ben ffordd. Y ffordd honno, mae'n hawdd gweld sut i wella'ch strwythur JSON.

Gallwn wirio ein Gwrthrych JSON gan ddefnyddio Offeryn Dilysu Sgema JSON:

Dilyswr JSON Gwall Am Ddim

Mae gennym ni ddilysiad oedran (lleiafswm = 20 ac uchafswm = 40) fel y dangosir yn y ffigur uchod. Ni chanfuwyd unrhyw wallau.

Dilyswr JSON Gyda Gwall

Roedd yn dangos gwall os cofnodwyd y dilysiad oedran yn anghywir.

Creu Sgema JSON

Gadewch i ni edrych ar enghraifft o Sgema JSON i weld beth rydyn ni'n siarad amdano. Mae Gwrthrych JSON sylfaenol sy'n disgrifio catalog cynnyrch fel a ganlyn:

Enghraifft JSON

Gellir ysgrifennu ei sgema JSON fel a ganlyn:

Canlyniad Sgema JSON

Mae Sgema JSON yn ddogfen JSON, a RHAID i'r ddogfen honno fod yn wrthrych. Geiriau allweddol yw aelodau gwrthrych / priodoleddau a bennir gan JSON Schema. Mae “geiriau allweddol” yn Sgema JSON yn cyfeirio at y rhan “allweddol” o gyfuniad allwedd / gwerth mewn gwrthrych. Mae ysgrifennu Sgema JSON yn golygu mapio “allweddair” penodol i werth o fewn gwrthrych yn bennaf. 

Gadewch i ni edrych yn agosach ar yr allweddeiriau a ddefnyddiwyd gennym yn ein hesiampl: 

Mae sgema JSON y mae sgema'r adnodd yn cydymffurfio ag ef wedi'i ysgrifennu gan y nodwedd hon. Ysgrifennir y sgema hwn yn dilyn safon drafftiau v4, fel y nodir gan y “$ sgema” allweddair. Mae hyn yn atal eich sgema rhag disgyn yn ôl i'r fersiwn gyfredol, a allai fod yn gydnaws â hŷn neu beidio.

Mae'r "Teitl"A"disgrifiad” esboniadol yn unig yw geiriau allweddol; nid ydynt yn gosod unrhyw gyfyngiadau ar y data sy'n cael ei wirio. Mae'r ddau allweddair hyn yn disgrifio pwrpas y sgema: mae'n disgrifio cynnyrch.

Mae'r "math” allweddair yn diffinio cyflwr terfyn cyntaf ein data JSON; rhaid ei fod yn Wrthrych JSON. Os na fyddwn yn gosod math ar gyfer pob sgem, ni fyddai'r cod yn gweithio. Rhai mathau cyffredin yw “rhif” “Boolean” “cyfanrif” “null” “gwrthrych” “arae” “llinyn”.

 

Cefnogir Sgema JSON gan y llyfrgelloedd canlynol:

 

iaith

Llyfrgell

C

WJElement

Python

jschon

PHP

Sgema Opis Json

Javascript

ajv

Go

gojsonschema

Kotlin

Media-ddilyswr

Ruby

JSONSchemer

JSON (Cystrawen)

Gadewch i ni edrych yn fyr ar gystrawen sylfaenol JSON. Mae cystrawen JSON yn is-set o gystrawen JavaScript sy'n cynnwys yr elfennau canlynol:

  • Defnyddir parau enw/gwerth sy'n cynrychioli data.
  • Cedwir gwrthrychau mewn braces cyrliog, ac mae pob enw yn cael ei arwain gan ':' (colon), gyda pharau gwerth wedi'u gwahanu gan “,” (coma).
  • Mae gwerthoedd yn cael eu gwahanu gan “,” (coma) a chedwir araeau mewn cromfachau sgwâr.
Enghraifft Cystrawen JSON

Cefnogir y ddau strwythur data canlynol gan JSON:

  • Rhestr o werthoedd wedi'u harchebu: Gall fod yn arae, yn rhestr, neu'n fector.
  • Casgliad o barau enw/gwerth: Mae ieithoedd cyfrifiadurol gwahanol yn cefnogi'r Strwythur Data hwn.

 

JSON (Gwrthrych)

Mae sgema JSON yn wrthrych JSON sy'n amlinellu math a strwythur gwrthrych JSON gwahanol. Gall mynegiant gwrthrych JavaScript gynrychioli gwrthrych JSON mewn amgylcheddau amser rhedeg JavaScript. Mae rhai enghreifftiau o wrthrychau sgema dilys fel a ganlyn:

Schema

Gemau

{}

unrhyw werth

{ math: 'gwrthrych' }

gwrthrych JavaScript

{ math: 'rhif' }

rhif JavaScript

{ math: 'llinyn'}

llinyn JavaScript

Ee:

Gwneud gwrthrych newydd sy'n wag:

var JSON_Obj = {} ;

Creu Gwrthrych Newydd:

var JSON_Obj = gwrthrych newydd()

JSON (Cymharu â XML)

Mae JSON ac XML yn fformatau sy'n annibynnol ar iaith y gall pobl eu darllen. Mewn senarios byd go iawn, gallant greu, darllen a dadgodio. Yn seiliedig ar y meini prawf canlynol, efallai y byddwn yn cymharu JSON â XML.

Cymhlethdod

Oherwydd bod XML yn fwy cymhleth na JSON, mae'n well gan raglenwyr JSON.

Defnydd o Araeau

Defnyddir XML i fynegi data strwythuredig; fodd bynnag, nid yw XML yn cefnogi araeau, ond mae JSON yn ei gefnogi.

Parsio

Dehonglir JSON gan ddefnyddio swyddogaeth eval JavaScript. mae eval yn dychwelyd y gwrthrych a ddisgrifiwyd pan gaiff ei ddefnyddio gyda JSON.

 

enghraifft:

 

JSON

XML

{

   “cwmni”: Ferrari,

   “enw”: “GTS”,

   “pris”: 404000

}

 

 

Ferrari 

 

GTS 

 

404000 

 

Manteision Sgema JSON

Mae JSON wedi'i gynllunio i allwyro mewn iaith y gall pobl a pheiriant ei darllen. Fodd bynnag, heb rywfaint o fireinio, ni all fod yn un o'r ddau. Mae gan Sgema JSON y fantais o wneud JSON yn fwy dealladwy i beiriannau a bodau dynol.

Mae defnyddio Sgema JSON hefyd yn dileu'r angen am sawl diweddariad ochr y cleient. Mae gwneud rhestr o godau HTML cyffredin ac yna eu gweithredu ar ochr y cleient yn ddull nodweddiadol ond anghywir o adeiladu ochr y cleient API apps. Fodd bynnag, nid dyma'r strategaeth fwyaf oherwydd gallai newidiadau ar ochr y gweinydd achosi rhai swyddogaethau i gamweithio.

Prif fantais Sgema JSON yw ei gydnawsedd ag amrywiaeth o ieithoedd rhaglennu, yn ogystal â chywirdeb a chysondeb dilysu.

Mae sgema JSON yn cefnogi ystod eang o borwyr a systemau gweithredu, felly nid yw apiau sydd wedi'u hysgrifennu yn JSON yn cymryd llawer o ymdrech i'w gwneud i gyd yn gydnaws â'r porwr. Yn ystod datblygiad, mae datblygwyr yn ystyried sawl porwr, er bod gan JSON y galluoedd eisoes.

JSON yw'r ffordd fwyaf effeithlon o rannu data o unrhyw faint, gan gynnwys sain, fideo, a chyfryngau eraill. Mae hyn oherwydd y ffaith bod JSON yn storio data mewn araeau, sy'n gwneud trosglwyddo data yn haws. O ganlyniad, JSON yw'r fformat ffeil gorau ar gyfer APIs a datblygiad ar-lein.

Wrth i APIs dyfu'n fwy cyffredin, mae'n rhesymegol tybio y bydd dilysu a phrofi API yn dod yn fwyfwy pwysig. Mae hefyd yn realistig disgwyl nad yw JSON yn debygol o fynd yn llawer symlach wrth i amser fynd rhagddo. Mae hyn yn awgrymu y bydd cael sgema ar gyfer eich data ond yn tyfu'n bwysicach wrth i amser fynd rhagddo. Gan mai JSON yw'r fformat ffeil safonol ar gyfer gweithio gydag APIs, mae Sgema JSON yn lle da i'r rhai sy'n gweithio gydag APIs.

Google a The Incognito Myth

Google a The Incognito Myth

Google a The Incognito Myth Ar Ebrill 1 2024, cytunodd Google i setlo achos cyfreithiol trwy ddinistrio biliynau o gofnodion data a gasglwyd o fodd Incognito.

Darllen Mwy »