```html
ในโลกของข้อมูลและ APIs การทำความเข้าใจ JSON Schema เป็นสิ่งสำคัญ มาสำรวจคำจำกัดความ โครงสร้าง และไวยากรณ์ JSON ตั้งแต่โครงสร้างไปจนถึงแนวทางปฏิบัติที่ดีที่สุด และค้นพบวิธีการผสานรวมกับ Apidog เพื่อปรับปรุงเอกสารประกอบ API ของคุณ
JSON Schema คืออะไร
JSON Schema เป็นข้อกำหนดที่กำหนดวิธีการอธิบายโครงสร้างและข้อจำกัดของข้อมูล JSON ใช้เพื่อตรวจสอบความถูกต้องของโครงสร้างของอ็อบเจกต์และอาร์เรย์ JSON เพื่อให้แน่ใจว่าเป็นไปตามรูปแบบและชุดกฎเฉพาะ JSON Schema มักใช้ในแอปพลิเคชันที่มีข้อมูล JSON เพื่อให้มั่นใจถึงความสอดคล้องของข้อมูลและคุณภาพของข้อมูล โดยให้แนวทางที่ชัดเจนสำหรับการแลกเปลี่ยนข้อมูล
ตัวอย่างง่ายๆ ของ JSON Schema:
ใน schema นี้ คุณกำลังอธิบายอ็อบเจกต์ที่มีคุณสมบัติสามประการ: "name," "age" และ "email" คุณระบุว่า "name" และ "email" เป็นสิ่งที่จำเป็นและตรวจสอบว่า "email" ควรมีรูปแบบอีเมล ข้อมูลใดๆ ที่คุณได้รับจาก API ที่เป็นไปตาม schema นี้จะต้องเป็นไปตามกฎเหล่านี้
Schema และ JSON เหมือนกันหรือไม่
JSON Schema และ JSON อาจดูคล้ายกัน แต่มีวัตถุประสงค์ที่แตกต่างกัน:
- JSON เป็นรูปแบบข้อมูลสำหรับการส่งข้อมูล มันเหมือนกับภาษาสำหรับการแลกเปลี่ยนข้อมูล
- JSON Schema เป็นชุดของกฎและแนวทางสำหรับลักษณะของข้อมูล ควรมีลักษณะอย่างไร ทำหน้าที่เป็นตัวตรวจสอบความถูกต้องและอธิบายโครงสร้างที่คาดหวังของข้อมูล JSON
มันเหมือนกับความแตกต่างระหว่างสูตรอาหาร (JSON Schema) และมื้ออาหาร (JSON) สูตรอาหารจะบอกคุณว่าต้องใช้อะไรบ้าง ส่วนผสม วิธีเตรียม และวิธีปรุงอาหาร (JSON Schema) ในขณะที่มื้ออาหารเป็นผลลัพธ์สุดท้ายที่อร่อย (JSON)
โครงสร้างและไวยากรณ์พื้นฐานของ JSON
JSON Schema แสดงออกในรูปแบบที่เรียบง่ายและอ่านง่าย โครงสร้างพื้นฐานประกอบด้วยคู่คีย์-ค่า วงเล็บปีกกา และวงเล็บเหลี่ยม
นี่คือโครงสร้าง JSON Schema พื้นฐาน:
วงเล็บปีกกา {} ด้านนอกสุดมีคำจำกัดความ schema ทั้งหมด
คีย์ "type" ระบุชนิดข้อมูลโดยรวม ในกรณีนี้คืออ็อบเจกต์
คีย์ "properties" กำหนดคุณสมบัติของอ็อบเจกต์ มี sub-schemas สำหรับแต่ละคุณสมบัติ
คีย์ "required" แสดงรายการคุณสมบัติใดบ้างที่จำเป็น
ชนิดข้อมูลและค่าดั้งเดิม
JSON Schema รองรับชนิดข้อมูลต่างๆ รวมถึง:
- "string": แสดงถึงข้อมูลข้อความ เช่น ชื่อหรือคำอธิบาย
- "integer": แสดงถึงจำนวนเต็ม เช่น อายุหรือปริมาณ
- "number": แสดงถึงค่าตัวเลข รวมถึงทศนิยม
- "boolean": แสดงถึงค่าจริงหรือเท็จ
- "null": แสดงถึงการขาดข้อมูล มักใช้เมื่อไม่มีค่า
นี่คือวิธีที่คุณสามารถกำหนดชนิดข้อมูลใน JSON Schema: