ByteCompress

Validator JSON

Controlla se il tuo JSON è sintatticamente valido secondo RFC 8259. Ricevi messaggi di errore precisi con numeri di riga e colonna per risolvere rapidamente i problemi.

0 chars
FreeClient-sideNo signup

Una virgola finale dopo l'ultimo elemento in un array è l'errore JSON più comune - ed è invisibile all'occhio nell'output minificato. Gli errori di parsing JSON rappresentano circa il 15% del tempo di debug delle API, secondo l'analisi del sondaggio per sviluppatori di StackOverflow del 2023. Questo validatore cattura questo e ogni altra violazione della RFC 8259 direttamente nel tuo browser. Incolla il tuo JSON per ricevere un verdetto immediato: valido o non valido, con la riga e la colonna esatte di qualsiasi problema. Nulla viene caricato. Nessun account richiesto.

Come Validare JSON

  1. Incolla o digita il tuo JSON nella casella di input.
  2. Il validatore controlla la sintassi in tempo reale, oppure clicca su Convalida per un rapporto completo.
  3. Se valido, un indicatore verde conferma la struttura con un riepilogo del tipo di livello superiore.
  4. Se non valido, il pannello degli errori mostra la riga esatta, la colonna e una descrizione del problema in linguaggio semplice.
  5. Correggi il problema indicato e riconvalida fino a ricevere un risultato pulito.

Cosa Viene Controllato

Regole Strutturali

JSON deve iniziare con un oggetto ({}) o un array ([]) a livello superiore, anche se la RFC 8259 consente anche valori primitivi (stringhe, numeri, booleani, null) come valori di livello superiore. Le parentesi graffe e le parentesi quadre devono essere bilanciate e correttamente annidate. Le virgole devono separare gli elementi ma non devono apparire dopo l'ultimo elemento - le virgole finali sono l'errore JSON più frequente. Ogni chiave dell'oggetto deve essere una stringa racchiusa tra virgolette doppie.

Tipi di Valore

JSON definisce sei tipi di valore: stringhe (racchiuse tra virgolette doppie, con sequenze di escape specifiche), numeri (interi e decimali, senza zeri iniziali), booleani (true e false, solo minuscole), null (minuscolo), oggetti e array. Valori specifici di JavaScript come undefined, NaN, Infinity e espressioni di funzione non sono JSON validi e falliranno la validazione.

Conformità a RFC 8259

RFC 8259 (pubblicata a dicembre 2017, che sostituisce RFC 4627 e RFC 7159) è lo standard IETF attuale per JSON. Specifica la codifica UTF-8, vieta chiavi duplicate negli oggetti e definisce sequenze di escape esatte per i valori delle stringhe. Questo validatore applica regole rigorose RFC 8259 per la massima compatibilità tra tutti i parser e linguaggi.

Esempio

Input Non Valido (virgola finale)

{
  "name": "Alice",
  "roles": ["admin", "editor",]
}

Errore del Validatore

Errore alla riga 3, colonna 33: Token inatteso ']'
Le virgole finali non sono consentite negli array JSON (RFC 8259 §5).

Errori di Sintassi Comuni

  • Virgola finale - {"a": 1,} - rimuovi l'ultima virgola prima della parentesi graffa o quadra di chiusura
  • Stringhe con virgolette singole - {'key': 'value'} - cambia in virgolette doppie
  • Chiavi non racchiuse - {key: "value"} - racchiudi la chiave tra virgolette doppie
  • Commenti JavaScript - // commento o /* commento */ - JSON non ha sintassi per i commenti; rimuovili
  • Maiuscole errate per booleani/null - True, False, NULL sono non validi; usa true, false, null

Differenza tra Validazione e Formattazione

La validazione controlla se JSON è sintatticamente corretto - passa o fallisce con dettagli specifici sugli errori. La formattazione aggiunge solo spazi bianchi per la leggibilità e non verifica la correttezza. Tentare di formattare JSON non valido fallisce anche, perché il formattatore deve prima analizzare il JSON. Valida prima, poi formatta.

Una volta che JSON supera la validazione, il Formatter JSON lo indentato per la leggibilità, e il Minificatore JSON lo comprime per l'uso in produzione. Per JSON incorporato nell'URL, decodifica con il Decoder URL prima di convalidare.

Domande Frequenti

Qual è la differenza tra validazione e formattazione JSON?

La validazione verifica se il tuo JSON è sintatticamente corretto secondo RFC 8259. La formattazione aggiunge solo spazi bianchi per la leggibilità e non verifica la correttezza. Puoi tentare di formattare JSON non valido, ma il formattatore fallirà anche perché deve prima analizzare il JSON. Valida prima di formattare.

Perché JavaScript accetta il mio JSON ma il validatore lo rifiuta?

Alcuni ambienti JavaScript accettano supersets JSON più permissivi come JSON5 o HJSON, che consentono commenti, stringhe con virgolette singole e virgole finali. Questo validatore testa secondo la rigorosa RFC 8259 per garantire che il JSON funzioni in tutti i linguaggi e runtime. Se il tuo caso d'uso è solo JavaScript, considera JSON5.parse() con la libreria json5.

Posso convalidare documenti di schema JSON con questo strumento?

Questo strumento valida solo la sintassi JSON, non la semantica dello schema JSON. Un documento di schema JSON è esso stesso un JSON valido, quindi la validazione della sintassi funziona. Per convalidare se un oggetto dati è conforme a una definizione di schema JSON, hai bisogno di un validatore di schema JSON dedicato come ajv.

I miei dati sono privati quando li convalido qui?

Completamente. La validazione avviene lato client nel tuo browser utilizzando la funzione nativa JSON.parse. Nessun dato viene inviato a server, registrato o memorizzato. Puoi convalidare in sicurezza payload contenenti credenziali API, informazioni personali o dati aziendali interni.

Quali sono gli errori di validazione JSON più comuni?

In ordine di frequenza: (1) virgole finali dopo l'ultimo elemento - [1, 2, 3,]; (2) stringhe con virgolette singole invece di virgolette doppie; (3) backslash non escapati o caratteri di controllo all'interno delle stringhe; (4) commenti JavaScript; (5) True/False/Null maiuscoli invece di true/false/null.