Aller au contenu
SDETRole
SDETRole

JSON et données

Validateur JSON Schema

Validez du JSON avec des schémas draft 2020-12 ou draft-07, ou générez-en un.

Fonctionne entièrement dans votre navigateur Sans inscription

Schema · 2020-12

JSON data

Paste a schema and some data, or load the sample

No schema yet? Paste a known-good response as data and click “Generate schema from data” to get a starting point.

À propos de cet outil

La validation par schéma transforme « la réponse a l’air correcte » en vérification de contrat reproductible : champs obligatoires, types, formats, enums et forme des tableaux. Ce validateur utilise Ajv, la bibliothèque qu’emploient de nombreuses suites de tests JavaScript, avec ajv-formats pour les vérifications email, date-time, uuid et uri. Chaque erreur est listée avec son chemin d’instance (/items/1/qty) et un message clair, et toutes les erreurs sont signalées, pas seulement la première. Si vous n’avez pas encore de schéma, collez une réponse correcte connue et générez-en un schéma de départ, puis resserrez-le à la main.

Mode d’emploi

  1. Collez le schéma à gauche et les données JSON à droite, ou chargez le schéma de commande d’exemple et ses données volontairement erronées.
  2. Laissez la version sur « Auto » pour suivre le mot-clé $schema du schéma, ou forcez 2020-12 ou draft-07.
  3. Corrigez les erreurs listées ; le résultat se met à jour pendant la saisie.
  4. Pour démarrer un nouveau schéma, collez une vraie réponse comme données et cliquez sur « Generate schema from data » (générer le schéma depuis les données).

FAQ : Validateur JSON Schema

Faut-il utiliser draft 2020-12 ou draft-07 ?

Utilisez ce que vos autres outils prennent en charge. OpenAPI 3.1 s’aligne sur 2020-12, tandis que beaucoup de validateurs plus anciens et l’outillage OpenAPI 3.0 sont plus proches de draft-07. Les principales différences visibles sont les tableaux de tuples (prefixItems en 2020-12, items sous forme de tableau en draft-07) et $defs contre definitions.

Le schéma généré est-il fiable ?

C’est un point de départ déduit d’un seul exemple : types, objets imbriqués, forme des éléments de tableau, formats de chaîne courants et chaque clé vue dans l’exemple marquée comme obligatoire. Il ne peut pas savoir quels champs sont optionnels, quelles valeurs sont des enums, ni les limites numériques : relisez-le avant de l’utiliser comme contrat.

Pourquoi un e-mail invalide est-il accepté ?

Le mot-clé « format » n’est appliqué que si le validateur active la vérification des formats. Cet outil les active via ajv-formats ; si votre framework de test ne le fait pas, ajoutez-y aussi le plugin de formats, sinon les mêmes données passeront.

Saisissez un terme pour rechercher sur SDETRole.

Recherche plein texte par Pagefind · s’exécute dans votre navigateur Ouvrir la page de recherche →