Validateur de schéma JSON
Validez des données JSON selon un schéma JSON Schema (draft 2020-12, 2019-09 ou 07) avec Ajv et contrôle des formats. Chaque erreur indique son chemin. En local.
S'exécute entièrement dans votre navigateur. Vos données ne sont jamais envoyées.
Outils Connexes
Voir ToutQu'est-ce que Validateur de schéma JSON ?
Le validateur de schéma JSON vérifie des données JSON par rapport à un schéma JSON Schema et liste toutes les violations – propriétés requises manquantes, mauvais types, nombres hors limites, formats invalides, propriétés en trop – chacune avec le pointeur JSON de la valeur fautive. Les drafts 2020-12, 2019-09 et 07 sont pris en charge.
Comment utiliser Validateur de schéma JSON
- Collez les données dans Données JSON et le schéma dans Schéma JSON (ou cliquez sur Charger un exemple pour chacun).
- Laissez la Version du schéma en détection automatique, ou choisissez un draft.
- Lisez le résultat : un message de succès, ou la liste des erreurs avec leurs chemins d'instance.
- Corrigez les données (ou le schéma) et le résultat se met à jour automatiquement.
Exemple
Data: {"age":-1,"email":"x"}
Schema: {"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","required":["name"],"properties":{"age":{"type":"integer","minimum":0},"email":{"type":"string","format":"email"}}} Validation errors: 3 (draft 2020-12) (root) Missing required property "name" /age Must be ≥ 0 /email Must be a valid "email"
Quand utiliser Validateur de schéma JSON
Utilisez-le pour tester des charges utiles d'API, des fichiers de configuration ou des schémas que vous écrivez. Les schémas draft-04 et antérieurs ne sont pas pris en charge (Ajv 8 les a abandonnés). Les URL $ref distantes ne sont pas téléchargées ; les schémas doivent être autonomes (les $ref locaux vers #/$defs/... fonctionnent).
Comment fonctionne Validateur de schéma JSON
La validation utilise Ajv 8, une implémentation de JSON Schema très répandue, avec allErrors activé pour que chaque violation soit signalée, et ajv-formats pour les mots-clés format comme email, date-time, uri et uuid. Le draft est détecté à partir de l'URL $schema du schéma (2020-12, 2019-09, sinon draft-07) ou choisi manuellement. Le mode strict est désactivé : les mots-clés inconnus comme example sont ignorés au lieu d'être rejetés. Les types d'erreur courants sont affichés avec des messages traduits ; les autres utilisent le message d'Ajv.
Cas d'utilisation courants
- Vérifier un corps de requête d'API par rapport à son schéma dérivé d'OpenAPI
- Déboguer le rejet d'un fichier de configuration
- Développer et tester un nouveau schéma JSON
- Valider des jeux de données de test
Note de Sécurité
Tout s'exécute localement dans votre navigateur : le code que vous collez n'est pas envoyé.
Questions Fréquentes
Quels drafts sont pris en charge ?
2020-12, 2019-09 et draft-07 (les schémas draft-06 fonctionnent en général comme du draft-07). Draft-04 n'est pas pris en charge.
Les formats comme email sont-ils vérifiés ?
Oui, via ajv-formats.
Peut-il charger des schémas $ref distants ?
Non, uniquement des références à l'intérieur du même schéma.
Pourquoi affiche-t-il plusieurs erreurs à la fois ?
Toutes les erreurs sont collectées pour que vous puissiez tout corriger en une seule passe.