Errore JSON "Unexpected token": le cause più comuni e come trovarlo
Cosa significano gli errori Unexpected token, Unexpected end of JSON input e Expected property name, quali sono le cause più comuni e come trovare la riga sbagliata in pochi secondi.
Aggiornata il 2 novembre 2026
Cosa vuol dire l'errore
JSON.parse legge il testo carattere per carattere. Quando trova qualcosa che lo standard JSON non ammette, si ferma e dice dove: "Unexpected token } in JSON at position 42". La posizione è il numero del carattere, poco utile se il file ha centinaia di righe.
Lo strumento JSON traduce la posizione in riga e colonna, così vai dritto al punto.
Le cause più comuni
| Errore | Causa tipica | Come correggere |
|---|---|---|
Unexpected token } o ] |
virgola dopo l'ultimo elemento | togli la virgola finale |
Unexpected token ' |
stringhe con apici singoli | usa le virgolette doppie |
Expected property name |
chiave senza virgolette | {nome: 1} → {"nome": 1} |
Unexpected token / |
commenti nel file | JSON non ammette commenti: toglili |
Unexpected end of JSON input |
testo troncato o vuoto | controlla che la risposta sia arrivata intera |
Unexpected token < |
è arrivato HTML, non JSON | guarda l'errore del server |
Come trovarlo in pochi secondi
- Apri lo strumento JSON e incolla il testo.
- Se c'è un errore, leggi riga e colonna sotto il risultato.
- Correggi nel riquadro di sinistra: il controllo riparte a ogni modifica.
- Quando è valido, premi Formatta per renderlo leggibile oppure Minimizza per l'invio.
Se il JSON viene da due versioni di un file (per esempio prima e dopo un deploy), il confronto con Diff mostra subito la riga cambiata.
Un consiglio per le API
Prima di chiamare JSON.parse su una risposta, controlla lo stato HTTP e l'header Content-Type. Così un errore del server diventa un messaggio chiaro invece di un "Unexpected token <".
Domande frequenti
Perché il mio JSON funziona in JavaScript ma non in JSON.parse?
Perché un oggetto JavaScript accetta chiavi senza virgolette, apici singoli, virgole finali e commenti. JSON no: è un formato più rigido. Lo strumento JSON segnala esattamente dove il testo si allontana dallo standard.
"Unexpected token <" cosa vuol dire?
Quasi sempre che al posto del JSON è arrivata una pagina HTML, per esempio una pagina di errore 404 o 500 del server. Controlla la risposta della chiamata prima di passarla a JSON.parse.