Validator JSON tercepat untuk Node.js dan browser.
Mendukung draft Skema JSON-04/06/07/2019-09/2020-12 (dukungan draft-04 memerlukan paket ajv-draft-04) dan Definisi Tipe JSON RFC8927.
Lebih dari 100 orang berkontribusi pada Ajv, dan kami ingin Anda bergabung dalam pengembangan ini. Kami menyambut baik penerapan fitur-fitur baru yang akan bermanfaat bagi banyak pengguna dan ide-ide untuk meningkatkan dokumentasi kami.
Harap tinjau pedoman Berkontribusi dan komponen Kode.
Semua dokumentasi tersedia di situs web Ajv.
Beberapa tautan situs yang berguna:
Sejak saya meminta untuk mendukung pengembangan Ajv, 40 orang dan 6 organisasi berkontribusi melalui GitHub dan OpenCollective - dukungan ini membantu menerima hibah MOSS!
Dukungan Anda yang berkelanjutan sangatlah penting - dana akan digunakan untuk mengembangkan dan memelihara Ajv setelah versi mayor berikutnya dirilis.
Silakan sponsori Ajv melalui:
Terima kasih.
Ajv menghasilkan kode untuk mengubah Skema JSON menjadi fungsi validasi super cepat yang efisien untuk pengoptimalan v8.
Saat ini Ajv adalah validator tercepat dan paling memenuhi standar menurut tolok ukur berikut:
Kinerja validator yang berbeda berdasarkan json-schema-benchmark:
addSchema
atau dikompilasi agar tersedia)type
Untuk menginstal versi 8:
npm install ajv
Cobalah di REPL Node.js: https://runkit.com/npm/ajv
Dalam JavaScript:
// or ESM/TypeScript import
import Ajv from "ajv"
// Node.js require:
const Ajv = require ( "ajv" )
const ajv = new Ajv ( ) // options can be passed, e.g. {allErrors: true}
const schema = {
type : "object" ,
properties : {
foo : { type : "integer" } ,
bar : { type : "string" } ,
} ,
required : [ "foo" ] ,
additionalProperties : false ,
}
const data = {
foo : 1 ,
bar : "abc" ,
}
const validate = ajv . compile ( schema )
const valid = validate ( data )
if ( ! valid ) console . log ( validate . errors )
Pelajari cara menggunakan Ajv dan lihat contoh lainnya di Panduan: memulai
Lihat https://github.com/ajv-validator/ajv/releases
Harap diperhatikan : Perubahan pada versi 8.0.0
Versi 7.0.0
Versi 6.0.0.
Harap meninjau dan mengikuti Kode Etik.
Silakan laporkan segala perilaku yang tidak dapat diterima ke [email protected] - perilaku tersebut akan ditinjau oleh tim proyek.
Untuk melaporkan kerentanan keamanan, silakan gunakan kontak keamanan Tidelift. Tidelift akan mengoordinasikan perbaikan dan pengungkapan. Harap JANGAN melaporkan kerentanan keamanan melalui masalah GitHub.
Ajv adalah bagian dari langganan Tidelift - ini memberikan dukungan terpusat kepada pengguna perangkat lunak sumber terbuka, selain dukungan yang diberikan oleh pengelola perangkat lunak.
MIT