JSON
JSON Schema Validator
Kiểm tra dữ liệu JSON theo JSON Schema (kiểu draft-07) — kèm đường dẫn chính xác và giải thích cho từng vi phạm.
JSON Schema describes the expected structure of a JSON document — which fields are required, what type they are, and what constraints apply to their values. This tool checks actual data against a schema and shows the exact path to every violation.
How to use it
- Paste a JSON Schema into one field and the data to validate into the other.
- The result lists each violation separately: the exact path to the problem field and a plain-language explanation of why it doesn't match the schema.
- Valid data is immediately flagged as fully compliant with the schema.
Common uses
- Checking a third-party API response against its documented schema before integrating with it.
- Debugging your own JSON Schema — figuring out why seemingly valid data gets rejected.
- Validating a configuration file against a schema before deploying.
Things to keep in mind
JSON Schema has several versions (draft-07, 2019-09, 2020-12) with small syntax differences — check which version your production validator actually expects.
required only checks that a field is present, not its value — an empty string or null still counts as "present" if the type allows it.
Bài viết về công cụ này: JSON Schema: cách mô tả và xác thực cấu trúc của JSON
Câu hỏi thường gặp
Xác thực theo JSON Schema thực sự kiểm tra điều gì?
Nó kiểm tra xem dữ liệu JSON của bạn có khớp với các quy tắc định nghĩa trong schema hay không — trường bắt buộc, kiểu dữ liệu, phạm vi giá trị, mẫu chuỗi và hơn thế nữa — chứ không chỉ kiểm tra JSON có đúng cú pháp hay không.
Công cụ này hỗ trợ bản nháp JSON Schema nào?
Công cụ này xác thực theo draft-07, một trong những phiên bản được áp dụng rộng rãi nhất — schema viết cho các bản nháp khác có thể dùng từ khóa không được nhận diện ở đây.
Schema hoặc dữ liệu của tôi có được gửi đi đâu để xác thực không?
Không. Việc xác thực diễn ra hoàn toàn trong trình duyệt của bạn bằng một thư viện JavaScript — không có gì được gửi tới máy chủ.
additionalProperties: false có tác dụng gì?
Theo mặc định, object có thể chứa bất kỳ trường nào ngoài những trường được mô tả trong properties. additionalProperties: false cấm các trường thừa — hữu ích để phát hiện lỗi gõ sai tên khóa hoặc trường debug bị bỏ sót.
Có thể mô tả một trường chấp nhận nhiều kiểu dữ liệu không?
Có, bằng cách dùng mảng trong type, ví dụ "type": ["string", "null"] nếu trường có thể là chuỗi hoặc null. Với các trường hợp phức tạp hơn, dùng các từ khóa oneOf, anyOf hoặc allOf.