JSON Schema è un vocabolario che consente di annotare e validare dati JSON. Definisce la struttura, i tipi e i vincoli dei tuoi dati.
Cos'è JSON Schema?
Un JSON Schema è esso stesso un documento JSON che descrive la forma prevista di un altro documento JSON. Specifica quali campi devono esistere, quali tipi dovrebbero avere e quali valori sono accettabili.
{ "type": "object", "properties": { "name": { "type": "string" }, "age": { "type": "integer", "minimum": 0 }, "email": { "type": "string", "format": "email" } }, "required": ["name", "email"]}Perché usare JSON Schema?
Senza validazione, la tua applicazione accetta silenziosamente qualsiasi dato. JSON Schema cattura gli errori presto — ai confini dell'API, durante il caricamento della configurazione o prima degli scrub su database.
- Contratti API — Assicurati che i body di richiesta e risposta corrispondano al formato previsto.
- Validazione configurazione — Cattura errori di battitura nei file di configurazione.
- Validazione moduli — Valida gli input dell'utente lato client e server.
- Documentazione — Uno schema ben scritto serve come documentazione viva.
Parole chiave principali
type specifica il tipo di dato. Per stringhe: minLength, maxLength, pattern, format. Per numeri: minimum, maximum. Per array: items, minItems, maxItems. Per oggetti: properties, required, additionalProperties.
Composizione con allOf, anyOf, oneOf
allOf richiede che tutti gli schema corrispondano. anyOf richiede che almeno uno corrisponda. oneOf richieda che esattamente uno corrisponda.
Debug di JSON non valido
Quando la validazione fallisce, hai bisogno di messaggi di errore chiari. Lo strumento JSON Formatter ti aiuta a formattare e ispezionare il tuo JSON.
Migliori pratiche
- Usa
$ref— Evita di duplicare gli schema. - Sii specifico — Usa
enumper set di valori fissi. - Versiona gli schema — Usa
$schemae$id. - Valida ai confini — Controlla i dati il prima possibile.
Provalo
Usa uno strumento locale per validare i tuoi dati JSON — tutto funziona nel tuo browser.