Expected ',' or '}' after property value in JSON at position N (line L column C)
L’analyseur a fini de lire une valeur dans un objet et attendait que la liste des membres continue par une virgule ou se termine par une accolade. Il a trouvé autre chose. Ce message est le fourre-tout de V8 pour l’intérieur d’un objet, il couvre donc plusieurs erreurs différentes.
Collez votre JSON et voyez exactement où il casse
Rien de ce que vous collez ne quitte votre navigateur. La liste d’autorisation connect-src en fait une garantie du navigateur plutôt qu’une promesse. Vérifiez-le vous-même
Ce qui le provoque réellement
Classés selon la fréquence à laquelle chacun se révèle être la réponse.
-
01 Une virgule manquante entre deux propriétés
La cause la plus fréquente, et généralement le résultat d’une édition à la main.
Casse
{ "a": 1 "b": 2 }Fonctionne
{ "a": 1, "b": 2 } -
02 Le fichier est tronqué
Si la position se trouve tout à la fin de l’entrée, c’est que rien ne suivait la valeur. Il s’agit d’un document coupé, pas d’une faute de syntaxe. Notre validateur distingue les deux cas et liste les crochets restés ouverts.
Casse
{ "a": 1Fonctionne
{ "a": 1 } -
03 Un commentaire après une valeur
JSON n’a pas de commentaires : un // note après une valeur produit ceci.
-
04 Un nombre hexadécimal, ou tout autre nombre non conforme à JSON
L’analyseur lit 0 comme un nombre complet puis trouve le x, qui n’est ni une virgule ni une accolade. JSON n’a pas de littéraux hexadécimaux.
Casse
{ "mask": 0x1F }Fonctionne
{ "mask": 31 }
La même erreur dans d’autres environnements
Le problème de fond est identique ; seule la formulation change. Si un collègue signale l’un de ces messages, il regarde exactement la même chose que vous.
| Python | Expecting ',' delimiter: line 1 column 10 (char 9) |
|---|---|
| V8, inside an array | Expected ',' or ']' after array element in JSON at position N |
Questions fréquentes
- Comment distinguer une virgule manquante d’un fichier tronqué ?
- Comparez la position signalée avec la longueur de votre entrée. Si elles coïncident, le document s’est terminé trop tôt. Notre validateur dit lequel des deux c’est, et pour un document tronqué il nomme chaque crochet non fermé et la ligne où il a été ouvert.
Corrigez-le maintenant
Collez le payload dans l’outil ci-dessus, ou allez directement à celui conçu pour ce travail.
Le localiser précisément