ຄູ່ມືກ່ຽວກັບ JSON Schema
ກ່ອນທີ່ພວກເຮົາຈະເຂົ້າໄປໃນ JSON Schema, ມັນເປັນສິ່ງສໍາຄັນທີ່ຈະຮູ້ຄວາມແຕກຕ່າງລະຫວ່າງ JSON ແລະ JSON Schema.
JSON
JSON ຫຍໍ້ມາຈາກ JavaScript Object Notation, ແລະມັນເປັນຮູບແບບຂໍ້ມູນທີ່ບໍ່ຂຶ້ນກັບພາສາທີ່ APIs ໃຊ້ເພື່ອສົ່ງຄຳຮ້ອງຂໍ ແລະຄຳຕອບ. JSON ແມ່ນງ່າຍດາຍທີ່ຈະອ່ານແລະຂຽນສໍາລັບຄົນແລະເຄື່ອງຈັກຄືກັນ. JSON ແມ່ນຮູບແບບທີ່ອີງໃສ່ຂໍ້ຄວາມທີ່ບໍ່ຜູກມັດກັບພາສາ (ພາສາທີ່ເປັນເອກະລາດ).
JSON Schema
JSON Schema ເປັນເຄື່ອງມືທີ່ເປັນປະໂຫຍດສໍາລັບການຢັ້ງຢືນໂຄງສ້າງຂໍ້ມູນ JSON. ເພື່ອລະບຸໂຄງສ້າງຂອງ JSON, ໃຊ້ຮູບແບບທີ່ອີງໃສ່ JSON. ຈຸດປະສົງຂອງມັນແມ່ນເພື່ອຮັບປະກັນວ່າຂໍ້ມູນ JSON ແມ່ນຍອມຮັບໄດ້. ສົນທິສັນຍາສໍາລັບຂໍ້ມູນ JSON ຂອງແອັບພລິເຄຊັນຂອງພວກເຮົາອາດຈະຖືກກໍານົດໂດຍໃຊ້ schema.
ມີສາມພາກສ່ວນຫຼັກຂອງ JSON Schema ສະເພາະ:
JSON Hyper-Schema:
JSON Hyper-Schema ແມ່ນພາສາ JSON Schema ທີ່ອາດຈະຖືກໃຊ້ເພື່ອຕິດສະຫຼາກເອກະສານ JSON ດ້ວຍລິ້ງເຊື່ອມໂຍງ ແລະຄຳແນະນຳສຳລັບການປະມວນຜົນ ແລະການປ່ຽນແປງຊັບພະຍາກອນ JSON ພາຍນອກຜ່ານຂໍ້ຄວາມ – ສະພາບແວດລ້ອມທີ່ອີງໃສ່ HTTP. ກົດ ທີ່ນີ້ ເພື່ອຮຽນຮູ້ເພີ່ມເຕີມກ່ຽວກັບ JSON Hyper-Schema.
JSON Schema Core:
ມັນແມ່ນຊຸດຂອງກົດລະບຽບສໍາລັບການຕິດສະຫຼາກແລະການກວດສອບເອກະສານ JSON.
JSON Schema Core:
- ອະທິບາຍຮູບແບບຂໍ້ມູນທີ່ທ່ານມີຢູ່ໃນຂະນະນີ້.
- ກວດສອບຂໍ້ມູນທີ່ສາມາດຖືກນໍາໃຊ້ໃນການທົດສອບອັດຕະໂນມັດ.
- ການຮັບປະກັນຄວາມຖືກຕ້ອງຂອງຂໍ້ມູນທີ່ໃຫ້ໂດຍລູກຄ້າ.
- ສະຫນອງເອກະສານທີ່ສາມາດອ່ານໄດ້ສໍາລັບທັງຄົນແລະເຄື່ອງຈັກ.
ການກວດສອບ JSON Schema:
ການກວດສອບຄວາມຖືກຕ້ອງໂດຍອີງໃສ່ JSON Schema ກໍານົດຂໍ້ຈໍາກັດກ່ຽວກັບໂຄງສ້າງຂອງຂໍ້ມູນຕົວຢ່າງ. ຫຼັງຈາກນັ້ນ, ຄໍາສໍາຄັນໃດໆທີ່ບໍ່ມີການຢືນຢັນ ຂໍ້ມູນຂ່າວສານ, ເຊັ່ນ metadata ຄໍາອະທິບາຍແລະຕົວຊີ້ບອກການນໍາໃຊ້, ຖືກເພີ່ມໃສ່ຕໍາແຫນ່ງຕົວຢ່າງທີ່ຕອບສະຫນອງຂໍ້ຈໍາກັດທັງຫມົດທີ່ປະກາດ.
ເຄື່ອງມື JSON Schema Validator ຂອງ Newtonsoft ເປັນເຄື່ອງມືທີ່ທ່ານສາມາດນໍາໃຊ້ໂດຍກົງໃນຕົວທ່ອງເວັບຂອງທ່ານ, ໂດຍບໍ່ເສຍຄ່າ. ທ່ານສາມາດນໍາໃຊ້ເຄື່ອງມືນີ້ເພື່ອທົດສອບໂຄງສ້າງຂອງ JSON schema ຂອງທ່ານ. ຫນ້ານີ້ມີການຄວບຄຸມແລະຄໍາອະທິບາຍເພື່ອໃຫ້ທ່ານເລີ່ມຕົ້ນ. ດ້ວຍວິທີນັ້ນ, ມັນງ່າຍທີ່ຈະເຫັນວິທີການປັບປຸງໂຄງສ້າງ JSON ຂອງທ່ານ.
ພວກເຮົາສາມາດກວດສອບ JSON Object ຂອງພວກເຮົາໂດຍໃຊ້ JSON Schema Validation Tool:
ພວກເຮົາມີການກວດສອບອາຍຸ (ຕໍາ່ສຸດທີ່ = 20 ແລະສູງສຸດ = 40) ດັ່ງທີ່ສະແດງຢູ່ໃນຮູບຂ້າງເທິງ. ບໍ່ພົບຂໍ້ຜິດພາດ.
ມັນສະແດງຂໍ້ຜິດພາດຖ້າການກວດສອບອາຍຸຖືກໃສ່ບໍ່ຖືກຕ້ອງ.
ການສ້າງ JSON Schema
ໃຫ້ເບິ່ງຕົວຢ່າງຂອງ JSON Schema ເພື່ອເບິ່ງວ່າພວກເຮົາກໍາລັງເວົ້າເຖິງຫຍັງ. ວັດຖຸ JSON ພື້ນຖານທີ່ອະທິບາຍລາຍການຜະລິດຕະພັນມີດັ່ງນີ້:
JSON Schema ຂອງມັນອາດຈະຖືກຂຽນດັ່ງຕໍ່ໄປນີ້:
JSON Schema ແມ່ນເອກະສານ JSON, ແລະເອກະສານນັ້ນຕ້ອງເປັນວັດຖຸ. ຄໍາສໍາຄັນແມ່ນສະມາຊິກ / ຄຸນລັກສະນະທີ່ລະບຸໄວ້ໂດຍ JSON Schema. "ຄໍາສໍາຄັນ" ໃນ JSON Schema ຫມາຍເຖິງສ່ວນ "ທີ່ສໍາຄັນ" ຂອງການປະສົມປະສານທີ່ສໍາຄັນ / ມູນຄ່າໃນວັດຖຸ. ການຂຽນ JSON Schema ກ່ຽວຂ້ອງກັບການສ້າງແຜນທີ່ "ຄໍາສໍາຄັນ" ໂດຍສະເພາະກັບມູນຄ່າພາຍໃນວັດຖຸສໍາລັບສ່ວນໃຫຍ່.
ຂໍໃຫ້ພິຈາລະນາຢ່າງລະອຽດກ່ຽວກັບຄໍາທີ່ພວກເຮົາໃຊ້ໃນຕົວຢ່າງຂອງພວກເຮົາ:
schema JSON ທີ່ schema ຂອງຊັບພະຍາກອນປະຕິບັດຕາມແມ່ນຂຽນລົງໂດຍຄຸນລັກສະນະນີ້. schema ນີ້ແມ່ນລາຍລັກອັກສອນດັ່ງຕໍ່ໄປນີ້ຮ່າງມາດຕະຖານ v4, ຕາມທີ່ລະບຸໄວ້ໂດຍ ".$ schema"ຄໍາສໍາຄັນ. ນີ້ປ້ອງກັນບໍ່ໃຫ້ schema ຂອງທ່ານຫຼຸດລົງກັບສະບັບປະຈຸບັນ, ເຊິ່ງອາດຈະຫຼືອາດຈະບໍ່ເຂົ້າກັນໄດ້ກັບເກົ່າ.
ການ "ຫົວຂໍ້"ແລະ"ຄໍາອະທິບາຍ” ຄໍາສໍາຄັນແມ່ນພຽງແຕ່ຄໍາອະທິບາຍ; ພວກເຂົາບໍ່ໄດ້ກໍານົດຂໍ້ຈໍາກັດໃດໆກ່ຽວກັບຂໍ້ມູນທີ່ຖືກກວດສອບ. ສອງຄໍານີ້ອະທິບາຍຈຸດປະສົງຂອງ schema: ມັນອະທິບາຍຜະລິດຕະພັນ.
ການ "ປະເພດ” ຄໍາສໍາຄັນກໍານົດເງື່ອນໄຂຂອບເຂດທໍາອິດຂອງຂໍ້ມູນ JSON ຂອງພວກເຮົາ; ມັນຕ້ອງເປັນວັດຖຸ JSON. ຖ້າພວກເຮົາບໍ່ກໍານົດປະເພດສໍາລັບ schemas ທັງຫມົດ, ລະຫັດຈະບໍ່ເຮັດວຽກ. ບາງປະເພດທົ່ວໄປແມ່ນ "ຈໍານວນ" "Boolean" "ຈໍານວນເຕັມ" "null" "object" "array" "string".
JSON Schema ໄດ້ຮັບການສະຫນັບສະຫນູນໂດຍຫ້ອງສະຫມຸດຕໍ່ໄປນີ້:
ພາສາ | ຫ້ອງສະຫມຸດ |
C | WJElement |
Python | jschon |
PHP | Opis Json Schema |
JavaScript | ajv |
Go | gojsonschema |
ໂຄໂຕລິນ | Media-validator |
Ruby | JSONSchemer |
JSON (Syntax)
ໃຫ້ພິຈາລະນາສັ້ນໆກ່ຽວກັບ syntax ພື້ນຖານຂອງ JSON. JSON syntax ແມ່ນຊຸດຍ່ອຍຂອງ syntax JavaScript ທີ່ປະກອບມີອົງປະກອບດັ່ງຕໍ່ໄປນີ້:
- ຊື່/ຄ່າຄູ່ແມ່ນໃຊ້ເພື່ອສະແດງຂໍ້ມູນ.
- ວັດຖຸຖືກຈັດຢູ່ໃນວົງເລັບໂຄ້ງ, ແລະແຕ່ລະຊື່ແມ່ນນໍາພາໂດຍ ':' (ຈໍ້າສອງເມັດ), ໂດຍມີຄູ່ຄ່າທີ່ຂັ້ນດ້ວຍ “,” (ເຄື່ອງໝາຍຈຸດ).
- ຄ່າຖືກແຍກດ້ວຍ “,” (ເຄື່ອງໝາຍຈຸດ) ແລະ arrays ຖືກຈັດຢູ່ໃນວົງເລັບສີ່ຫຼ່ຽມ.
ສອງໂຄງສ້າງຂໍ້ມູນຕໍ່ໄປນີ້ໄດ້ຮັບການສະໜັບສະໜູນໂດຍ JSON:
- ລາຍການຄ່າທີ່ສັ່ງແລ້ວ: ມັນສາມາດເປັນ array, ບັນຊີລາຍຊື່, ຫຼື vector.
- ການເກັບກໍາຊື່/ຄູ່ມູນຄ່າ: ພາສາຄອມພິວເຕີທີ່ແຕກຕ່າງກັນສະຫນັບສະຫນູນໂຄງສ້າງຂໍ້ມູນນີ້.
JSON (ວັດຖຸ)
A JSON schema ແມ່ນວັດຖຸ JSON ທີ່ອະທິບາຍປະເພດແລະໂຄງສ້າງຂອງວັດຖຸ JSON ທີ່ແຕກຕ່າງກັນ. ການສະແດງອອກວັດຖຸ JavaScript ສາມາດເປັນຕົວແທນຂອງວັດຖຸ JSON ໃນສະພາບແວດລ້ອມເວລາແລ່ນ JavaScript. ບາງຕົວຢ່າງຂອງວັດຖຸ schema ທີ່ຖືກຕ້ອງມີດັ່ງນີ້:
Schema | ກົງກັນ |
{} | ຄ່າໃດໆ |
{ປະເພດ: 'ວັດຖຸ' } | ວັດຖຸ JavaScript |
{ ປະເພດ: 'ຈໍານວນ' } | ຕົວເລກ JavaScript |
{ ປະເພດ: 'string'} | ສະຕຣິງ JavaScript |
ຕົວຢ່າງ:
ສ້າງວັດຖຸໃໝ່ທີ່ຫວ່າງເປົ່າ:
var JSON_Obj = {};
ການສ້າງວັດຖຸໃໝ່:
var JSON_Obj = ວັດຖຸໃໝ່()
JSON (ປຽບທຽບກັບ XML)
JSON ແລະ XML ແມ່ນຮູບແບບທີ່ມະນຸດອ່ານໄດ້ໂດຍພາສາທີ່ເປັນເອກະລາດ. ໃນສະຖານະການທີ່ແທ້ຈິງ, ພວກເຂົາສາມາດສ້າງ, ອ່ານ, ແລະຖອດລະຫັດ. ອີງຕາມເງື່ອນໄຂຕໍ່ໄປນີ້, ພວກເຮົາອາດຈະປຽບທຽບ JSON ກັບ XML.
ຄວາມສັບສົນ
ເນື່ອງຈາກວ່າ XML ມີຄວາມຊັບຊ້ອນຫຼາຍກ່ວາ JSON, ຜູ້ຂຽນໂປລແກລມມັກ JSON.
ການນໍາໃຊ້ Arrays
XML ຖືກນໍາໃຊ້ເພື່ອສະແດງຂໍ້ມູນທີ່ມີໂຄງສ້າງ; ຢ່າງໃດກໍຕາມ, XML ບໍ່ສະຫນັບສະຫນູນ arrays, ແຕ່ JSON ເຮັດ.
ກຳ ລັງທັບເຮືອ
JSON ຖືກຕີຄວາມໝາຍໂດຍໃຊ້ຟັງຊັນ eval ຂອງ JavaScript. eval ສົ່ງຄືນວັດຖຸທີ່ອະທິບາຍໄວ້ເມື່ອໃຊ້ກັບ JSON.
ຕົວຢ່າງ:
JSON | XML |
{ "ບໍລິສັດ": Ferrari, "ຊື່": "GTS", ລາຄາ: 404000 } |
ເຟີຣາຣີ
GTS
404000
|
ຂໍ້ໄດ້ປຽບຂອງ JSON Schema
JSON ຖືກອອກແບບມາເພື່ອຫັນປ່ຽນເປັນພາສາທີ່ມະນຸດ ແລະເຄື່ອງສາມາດອ່ານໄດ້. ຢ່າງໃດກໍຕາມ, ໂດຍບໍ່ມີການປັບບາງ, ມັນສາມາດເປັນທັງສອງ. JSON Schema ມີປະໂຫຍດໃນການເຮັດໃຫ້ JSON ເຂົ້າໃຈໄດ້ຫຼາຍຂຶ້ນສໍາລັບທັງເຄື່ອງຈັກ ແລະມະນຸດ.
ການນໍາໃຊ້ JSON Schema ຍັງເອົາຄວາມຕ້ອງການສໍາລັບການອັບເດດດ້ານລູກຄ້າຫຼາຍໆຄັ້ງ. ການສ້າງບັນຊີລາຍຊື່ຂອງລະຫັດ HTML ທົ່ວໄປແລະຫຼັງຈາກນັ້ນປະຕິບັດໃຫ້ເຂົາເຈົ້າຢູ່ໃນຝ່າຍລູກຄ້າແມ່ນວິທີການປົກກະຕິແຕ່ບໍ່ຖືກຕ້ອງໃນການກໍ່ສ້າງຝ່າຍລູກຄ້າ. API ແອັບ. ຢ່າງໃດກໍຕາມ, ນີ້ບໍ່ແມ່ນຍຸດທະສາດທີ່ຍິ່ງໃຫຍ່ທີ່ສຸດເພາະວ່າການປ່ຽນແປງໃນດ້ານເຊີຟເວີອາດຈະເຮັດໃຫ້ບາງຫນ້າທີ່ເຮັດວຽກຜິດປົກກະຕິ.
ປະໂຫຍດຕົ້ນຕໍຂອງ JSON Schema ແມ່ນຄວາມເຂົ້າກັນໄດ້ກັບພາສາການຂຽນໂປຼແກຼມຕ່າງໆ, ເຊັ່ນດຽວກັນກັບຄວາມຖືກຕ້ອງແລະຄວາມສອດຄ່ອງຂອງການກວດສອບ.
JSON schema ສະຫນັບສະຫນູນລະດັບຄວາມກ້ວາງຂອງຕົວທ່ອງເວັບແລະ ລະບົບປະຕິບັດການ, ດັ່ງນັ້ນ, ແອັບຯທີ່ຂຽນໃນ JSON ບໍ່ໄດ້ໃຊ້ຄວາມພະຍາຍາມຫຼາຍເພື່ອເຮັດໃຫ້ພວກມັນເຂົ້າກັນໄດ້ກັບຕົວທ່ອງເວັບທັງຫມົດ. ໃນລະຫວ່າງການພັດທະນາ, ນັກພັດທະນາພິຈາລະນາຕົວທ່ອງເວັບຈໍານວນຫນຶ່ງ, ເຖິງແມ່ນວ່າ JSON ມີຄວາມສາມາດແລ້ວ.
JSON ແມ່ນວິທີທີ່ມີປະສິດທິພາບທີ່ສຸດໃນການແບ່ງປັນຂໍ້ມູນທຸກຂະໜາດ, ລວມທັງສຽງ, ວິດີໂອ ແລະສື່ອື່ນໆ. ນີ້ແມ່ນຍ້ອນຄວາມຈິງທີ່ວ່າ JSON ເກັບຮັກສາຂໍ້ມູນຢູ່ໃນ arrays, ເຊິ່ງເຮັດໃຫ້ການສົ່ງຂໍ້ມູນງ່າຍຂຶ້ນ. ດັ່ງນັ້ນ, JSON ແມ່ນຮູບແບບໄຟລ໌ທີ່ດີທີ່ສຸດສໍາລັບ APIs ແລະການພັດທະນາອອນໄລນ໌.
ເມື່ອ APIs ເຕີບໃຫຍ່ຂຶ້ນເລື້ອຍໆ, ມັນສົມເຫດສົມຜົນທີ່ຈະສົມມຸດວ່າການກວດສອບແລະການທົດສອບ API ຈະມີຄວາມສໍາຄັນຫຼາຍຂຶ້ນ. ມັນຍັງເປັນຈິງທີ່ຈະຄາດຫວັງວ່າ JSON ຈະບໍ່ງ່າຍດາຍຫຼາຍເມື່ອເວລາຜ່ານໄປ. ນີ້ຫມາຍຄວາມວ່າການມີ schema ສໍາລັບຂໍ້ມູນຂອງທ່ານພຽງແຕ່ຈະເພີ່ມຂຶ້ນທີ່ສໍາຄັນຕາມເວລາຕໍ່ໄປ. ເນື່ອງຈາກວ່າ JSON ເປັນຮູບແບບໄຟລ໌ມາດຕະຖານສໍາລັບການເຮັດວຽກກັບ APIs, JSON Schema ແມ່ນການທົດແທນທີ່ດີສໍາລັບຜູ້ທີ່ເຮັດວຽກກັບ APIs.