Controllare campi obbligatori
Descrivi un piccolo contratto con required e properties e confronta risposte API. Un campo presente con null può richiedere un tipo nullable; non è semplicemente assente.
Confronta un documento JSON con uno schema direttamente nel browser. Gli errori indicano il percorso, la regola interessata e la causa del problema.
Verifica dati JSON rispetto ai vincoli supportati di uno schema e trova gli errori tramite percorso e parola chiave. Il primo campo contiene i dati e il secondo lo schema: due JSON validi non dimostrano il rispetto del contratto. Il controllo resta locale e non recupera schemi remoti. Questa implementazione copre un sottoinsieme esplicito di JSON Schema 2020-12, non tutte le estensioni.
Sono supportati type, const, enum, limiti numerici e multipleOf. Le stringhe usano minLength, maxLength e pattern. Gli array possono usare minItems, maxItems, uniqueItems e un singolo schema items. Gli oggetti supportano properties, required, additionalProperties, minProperties e maxProperties. Si valutano anche allOf, anyOf, oneOf e not.
Lo schema intero viene esaminato prima dei dati, inclusi rami non utilizzati. Vincoli supportati ma definiti male producono errori di schema. $ref, $dynamicRef, prefixItems, contains, patternProperties, dipendenze condizionali, regole unevaluated e if/then/else non sono implementati. La loro presenza genera una diagnosi esplicita anziché un successo fuorviante.
format non valida email, URL o date in questo motore. Annotazioni come title e description non verificano valori. Se servono vocabolari o funzioni ulteriori, scegli un validatore appropriato invece di rimuovere vincoli per ottenere un risultato positivo.
La lunghezza conta punti di codice Unicode, non unità UTF-16 o caratteri visivi combinati. const, enum e uniqueItems ignorano l’ordine delle proprietà degli oggetti, conservando ordine degli array e tipi scalari. I numeri hanno la precisione JavaScript: valori grandi e calcoli decimali richiedono una strategia adatta nell’applicazione.
Incolla valori nel documento JSON e regole nel campo schema. Il pulsante di esempio mostra la separazione senza servizi esterni.
Controlla riepilogo, percorso e regola di ogni riga. Un percorso con $schema indica un problema nella definizione del contratto.
Modifica dati errati o una regola definita male. Cambiare un campo nasconde i risultati precedenti; valida nuovamente prima di concludere.
Descrivi un piccolo contratto con required e properties e confronta risposte API. Un campo presente con null può richiedere un tipo nullable; non è semplicemente assente.
Usa uniqueItems per trovare oggetti equivalenti anche quando le proprietà sono scritte in ordine diverso.
Distingui errori dei dati, schemi invalidi e parole chiave non supportate. Negli ultimi due casi il contratto completo non è stato verificato.
Il blocco presenta insieme i due input: metti document nel primo campo e schema nel secondo. Il riepilogo conferma che 😀 rispetta una lunghezza tra 1 e 1.
Input
{
"document": "😀",
"schema": {
"type": "string",
"minLength": 1,
"maxLength": 1
}
}Risultato
{
"valid": true,
"issues": []
}id contiene la stringa "1", mentre lo schema richiede integer. Il riepilogo indica type in $.id. Il valore non viene convertito automaticamente in numero.
Input
{
"document": {
"id": "1"
},
"schema": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "integer"
}
},
"additionalProperties": false
}
}Risultato
{
"valid": false,
"issues": [
{
"path": "$.id",
"keyword": "type"
}
]
}No. Non si valutano riferimenti locali o remoti. Producono una diagnosi esplicita; nessun file o URL di schema viene caricato.
Il motore non tratta format come un’asserzione di validazione. Usa vincoli supportati o un validatore con il vocabolario di formati richiesto dal contratto.
Un’emoji di un solo punto di codice come 😀 conta uno. Modificatori, segni combinati e sequenze di unione possono contare più punti anche se sembrano un solo carattere.
L’ordine delle proprietà non cambia il valore di un oggetto JSON. const, enum e uniqueItems applicano uguaglianza strutturale. L’ordine degli elementi degli array resta significativo.
Strumenti correlati
Strumenti simili o complementari a questo.
Controlla una descrizione API in JSON o YAML senza caricarla su un server.
Genera un JSON Schema da un esempio JSON, localmente nel browser.
Formatta, minifica e valida un documento JSON per renderlo più leggibile o compatto.