實用工具

JSON Schema 線上驗證

用 Ajv 依 JSON Schema 驗證 JSON 文件,列出每一個不符合的路徑,而不只是第一個。

瀏覽器本機執行AI 開發工具1.5萬
免費

輸入

0 B

結果

結果會顯示在這裡。

模型的結構化輸出、webhook 請求內容或設定檔被拒收時,真正有用的是一份清單:哪些路徑不合格、各自違反了哪條規則。這個驗證器執行的是 Ajv——多數 JavaScript 工具鏈背後的 JSON Schema 實作——並開啟 allErrors,所以有五處問題的文件就會顯示五行:出錯值的 JSON 指標、錯誤訊息,以及 Schema 裡觸發這項錯誤的規則路徑。Schema 放進 Schema 欄位,要驗證的文件放進輸入框。

它是怎麼運作的

  • 驗證所用的規範版本跟隨 Schema 本身的 $schema:2020-12 和 2019-09 使用 Ajv 對應的類別,draft-07 或沒有宣告時使用預設類別。
  • 已載入 ajv-formats,所以 email、date-time、uri、uuid 這些 format 會真的被檢查,而不是被默默忽略。
  • Ajv 的 strict 選項已關閉,examples 之類的註記或廠商自訂關鍵字不會中斷驗證;如果 Schema 本身寫錯,會明確回報出來。

你的資料去了哪裡

哪也沒去。本工具完全在你的瀏覽器裡執行:你貼上的文字由頁面處理,不會傳輸到任何伺服器,也不會寫進任何紀錄。

本工具免費且免登入,執行結果只存在於你目前的頁面裡,不會被儲存到任何地方。

它要花多少

本工具完全免費,不需要登入,也不消耗點數。

常見問題

為什麼我的 draft-04 Schema 被拒絕?
draft-04 的 exclusiveMinimum 和 exclusiveMaximum 是布林值,之後的版本改成了數字,用新版本去跑舊 Schema 可能會放過本該失敗的資料。與其用猜的,工具會請你更新 $schema。draft-06 的 Schema 會以 draft-07 驗證,因為 draft-07 只是在它的基礎上增加關鍵字。
每行 at 後面那段路徑是什麼意思?
那是失敗規則在 Schema 裡的路徑,例如 #/properties/items/items/properties/price/minimum。每行開頭的路徑指向你的資料,這第二個路徑則指向 Schema。當你發現錯的其實是 Schema 而不是資料時,這個路徑能直接帶你找到要修改的那條規則。
會從網路下載 $ref 參照的 Schema 嗎?
不會。同一份 Schema 內部的參照(#/$defs/… 或 #/definitions/…)可以正常解析,但遠端的 $ref 網址不會被下載,依賴它的 Schema 會編譯失敗,並在錯誤訊息中指出是哪個參照。想要離線驗證,就把被參照的定義貼進 $defs 裡。

背後的開源專案

本工具執行在 ajv-validator/ajv 之上,以 MIT 授權發布。如果你需要在自己的程式裡實作同樣的能力,直接用這個函式庫。

ajv-validator/ajv

也常被稱作

  • json schema 驗證
  • json schema 線上驗證
  • ajv 線上
  • json 格式檢查工具
  • json schema 2020-12
  • json schema draft 7