什麼是 JSON Schema?
JSON Schema 是由 IETF(網際網路工程任務組)定義的詞彙表,允許你描述 JSON 資料的結構、約束和驗證規則。JSON Schema 指定物件必須具有哪些屬性、允許哪些資料型別、值的範圍、字串模式、陣列長度等。它被廣泛用於 API 請求/回應驗證、表單產生、設定檔驗證和資料文件化。JSON Schema 支援從 Draft-04 到 Draft 2020-12 的多個版本。此工具允許你從範例 JSON 資料自動產生 JSON Schema(作為起點非常有用),並使用 Ajv(Another JSON Validator)庫根據 Schema 驗證任何 JSON 文件。Ajv 是 JavaScript 生態系統中使用最廣泛的 JSON Schema 驗證器。
如何使用此免費線上 JSON Schema 工具
- 1使用頂部的頁籤在 'Generate Schema' 和 'Validate JSON' 之間切換。
- 2產生 Schema:將範例 JSON 物件貼上到輸入區域,工具會自動推斷型別並產生可作為起點使用的 JSON Schema。
- 3驗證 JSON:在第一個輸入框中貼上要驗證的 JSON 資料,在第二個輸入框中貼上 JSON Schema,然後點選 'Validate' 按鈕。
- 4檢視驗證結果:綠色訊息表示 JSON 符合 Schema;紅色訊息列出所有驗證錯誤及其路徑。
- 5點選複製按鈕複製產生的 Schema 或驗證結果。
JSON Schema 產生與驗證器 — 免費線上工具的常見使用情境
快速完成日常任務
無需安裝桌面軟體,打開網頁即可處理常見的文字、圖片、資料或格式轉換工作。
檢查與整理內容
在提交檔案、發布內容或複製結果之前,快速發現格式問題並取得結構清楚的輸出。
重視隱私的瀏覽器處理
對於支援本機執行的工具,資料會留在目前瀏覽器中,不需要上傳到第三方服務。
常見問題
此工具支援哪個 JSON Schema 版本?
驗證引擎(Ajv)預設支援 JSON Schema Draft-07,這是採用最廣泛的版本。Schema 產生器產生的 Schema 相容 Draft-04 及更高版本。對於 Draft 2019-09 或 2020-12 的功能,可能需要新增 ajv-formats 或 ajv-keywords 外掛。
自動產生的 Schema 準確嗎?
產生的 Schema 從你提供的範例資料推斷型別——它能準確判斷字串、數字、布林值、陣列和物件型別。但它無法推斷最小/最大值、字串模式(正規表示式)、必填欄位或列舉值等約束。請將產生的 Schema 視為起點,然後手動完善。
'allErrors: true' 在驗證中是什麼意思?
預設情況下,Ajv 在遇到第一個驗證錯誤時就會停止。設定 'allErrors: true' 後,它會繼續檢查並報告找到的每個錯誤,讓你一次獲得所有問題的完整資訊。這對除錯更有用,但對於非常大的文件會稍慢。
這個工具免費且保護隱私嗎?
是的。Schema 產生和驗證完全在瀏覽器中使用 to-json-schema 和 Ajv JavaScript 庫執行。不會向任何伺服器傳送資料,也無需註冊。