JSON Schema驗證器
在瀏覽器中實時驗證JSON數據
關於JSON Schema驗證器
JSON Schema 驗證器是一個免費的線上工具,能在您的瀏覽器中即時檢測輸入的 JSON 數據是否符合指定的 JSON Schema 規範。非常適合在 API 開發與系統整合的過程中,用來快速測試 JSON 的資料結構是否正確。
它支援 Draft 4、Draft 7 以及 Draft 2020-12 等最新的 Schema 規範,能瞬間偵測出複雜物件或陣列的嵌套錯誤、或是缺少必填屬性等問題。所有的處理流程都在本地端執行,因此即使是極具機密性的 JSON 數據也能安全地進行驗證。
如何驗證JSON
輸入 JSON Schema
在左側的「JSON Schema」文字區塊中,輸入或貼上已定義好的 Schema。
輸入 JSON Data
在右側的「JSON Data」文字區塊中,輸入您想要測試的目標 JSON 數據。
確認驗證結果
驗證結果將會立即顯示在下方的面板中。若開啟實時驗證,系統會隨著您的輸入即時標示出錯誤位置(路徑與原因)。
JSON Schema術語表
- JSON Schema
- 用來定義 JSON 數據結構、允許的值類型、以及必填項目等的詞彙(規範),是數據驗證中不可或缺的工具。
- AJV
- 全名為 Another JSON Schema Validator,是本工具內部採用的一款極速且穩定的 JSON Schema 驗證函式庫。
- Instance Path
- 指示 JSON 數據中發生錯誤的具體位置。例如 `/users/0/age` 代表了陣列的索引或屬性階層關係。
- Draft 2020-12
- 這是 JSON Schema 規範的其中一個版本,屬於較現代化的規格,改進了前綴字及正則表達式的處理方式。
- Validation
- 指數據的妥當性確認。它能作為一道防線,避免系統因為預期外的資料而發生崩潰。
常見問題
- Q.輸入包含機密資訊的JSON安全嗎?
- 是的,非常安全。本工具將所有輸入的JSON數據完全在您的瀏覽器中處理。由於不會向外部伺服器發送任何數據,即使包含API金鑰或個人資訊,也沒有洩露的風險。
- Q.支援哪些版本的 JSON Schema?
- 支援 Draft 4, 6, 7, 2019-09 和 2020-12。藉由內部使用的 AJV 函式庫,確保能根據最新規範進行驗證。
- Q.JSON 格式錯誤與 Schema 驗證錯誤有何不同?
- 格式錯誤是指 JSON 的語法損壞,例如漏掉逗號或忘記閉合引號。而 Schema 驗證錯誤是指 JSON 語法正確,但內容違反了指定規則,例如「年齡不是數字」或「缺少必填欄位」。
- Q.能否解析分割在多個檔案中的 Schema ($ref)?
- 因為本工具在單一瀏覽器會話中運行,所以對於自動解析外部 URL 的 `$ref` 會有所限制。建議將所有定義整合到單一 Schema 物件的 `$defs` 中使用。
- Q.如何關閉實時驗證功能?
- 處理龐大的 JSON 時,每次輸入都進行驗證可能會使畫面變卡。只要關閉工具上方的「實時驗證」開關,即可切換為手動模式,只有在點擊按鈕時才會執行驗證。
使用場景
測試 API 回應
在實作前端之前,先確認開發中的 API 是否回傳了符合設計文件要求的 JSON 結構。
檢查設定檔語法
檢查像是 `config.json` 或 `package.json` 這類複雜的檔案是否遵循規範正確編寫。
建立驗證規則
當您在建立準備整合進應用程式的 JSON Schema 時,可以把它當作沙盒來測試是否運作正常。
學習 JSON Schema
透過不斷嘗試與真實資料的互動,來學習像是 $ref 或 allOf 等複雜的 Schema 功能。
技術細節
本工具在客戶端運行 Ajv (v8),這是 Node.js 生態系統中廣泛使用的超高速 JSON Schema 驗證器。由於 Ajv 會將 Schema 定義編譯一次並生成優化過的 JavaScript 函式,因此即便是龐大的 JSON 數據也能極速完成驗證。所有驗證都在瀏覽器內完成,提供零延遲的實時用戶體驗。
發送反饋
請告訴我們您的想法,以幫助我們改進工具。
Feedback is temporarily suspended
The server is busy or spam protection is active. Please try again later.