Foire aux questions
Questions fréquentes sur le formatage, la réparation et la validation de JSON, ainsi que sur la sécurité des données.
Questions fréquentes
- Puis-je formater du JSON invalide en ligne ?
- Oui. Collez le JSON cassé et cliquez sur Repair & Format. L’outil tente de réparer les guillemets simples, les virgules finales, les clés sans guillemets, les commentaires et les valeurs de style Python avant de formater la sortie réparée.
- Comment formater du JSON cassé ?
- Commencez par le plus petit échantillon que vous pouvez coller en toute sécurité, réparez la syntaxe, puis validez le résultat avec un parseur JSON strict. Si la charge contient des virgules finales, l’outil peut formater du JSON avec virgules finales en supprimant d’abord la dernière virgule et en formatant le résultat valide.
- Que signifie « Unexpected token » ?
- Cela signifie que le parseur a trouvé un caractère qui ne peut pas apparaître à cette position en JSON strict. Un guillemet simple, une barre, une virgule finale ou un
Trueen majuscule indiquent souvent du presque-JSON copié depuis JavaScript, Python ou une réponse d’IA. - Puis-je convertir du JSON en objet JavaScript ?
- Oui. Une fois que l’entrée est du JSON valide, utilisez
JSON.parse(jsonText)en JavaScript. Si le texte est un littéral d’objet JavaScript, réparez-le d’abord en JSON strict avant le parsing. - Mes données sont-elles en sécurité ?
- Oui. L’outil s’exécute entièrement dans votre navigateur via JavaScript. Aucune donnée n’est envoyée à un serveur.
- Quelle est la différence entre Repair et Validate ?
- Repair tolère les erreurs courantes et tente de produire du JSON valide. Validate utilise un parseur strict et signale la ligne et la colonne exactes de chaque erreur.
Guide d’utilisation détaillé
La plupart des formateurs de JSON s’arrêtent dès qu’un parseur lève une erreur. Cet outil est conçu pour l’étape qui précède le formatage normal : il transforme du presque-JSON en JSON strict, puis embellit le résultat afin que vous puissiez examiner la structure. C’est donc utile quand vous cherchez comment formater du JSON cassé, et pas seulement comment embellir une réponse valide.
Commencez par le plus petit morceau de JSON cassé que vous pouvez coller en toute sécurité. Cliquez sur Repair & Format lorsque le texte provient d’un littéral d’objet JavaScript, d’un extrait Python, d’une réponse en Markdown, d’une configuration éditée à la main ou d’un log qui ressemble à du JSON mais échoue dans un parseur strict. La passe de réparation normalise les erreurs de syntaxe courantes en JSON valide, puis imprime le résultat avec une indentation prévisible pour que tableaux et objets imbriqués soient plus faciles à relire.
Après la réparation, cliquez sur Validate. La validation utilise un parseur strict et devrait être la dernière vérification avant de copier la sortie vers un client d’API, une configuration d’application, une migration de base de données, un fixture de test ou un exemple en ligne de commande. Si la validation échoue, lisez la ligne et la colonne, examinez le token surligné et comparez l’entrée et la sortie réparée. Repair nettoie la syntaxe ; il ne décide pas si les valeurs sont sémantiquement correctes pour votre application.
N’utilisez Minify qu’une fois le JSON valide. Le JSON minifié est utile pour les variables d’environnement, les paramètres de requête, les logs compacts et les petits exemples en documentation. Pour la revue de code, le débogage et les tests d’API, la sortie formatée est généralement plus sûre, car chaque clé, élément de tableau et valeur imbriquée est sur une ligne prévisible.
Dictionnaire des erreurs JSON
- Virgule finale
- Une virgule finale avant
}ou]est acceptée par de nombreux outils JavaScript mais rejetée par les parseurs JSON. Retirez la virgule finale après la dernière propriét é ou le dernier élément du tableau. - Clés JSON sans guillemets
- Les clés d’objet comme
nameetactivedoivent être entourées de guillemets doubles. Convertissez{ name: "Ada" }en{ "name": "Ada" }. - Guillemets simples
- Les chaînes JSON exigent des guillemets doubles. Remplacez
'Ada'par"Ada"et faites attention aux apostrophes à l’intérieur des chaînes. - Unexpected token
- Ce message signifie qu’un caractère est apparu là où la grammaire JSON stricte ne l’autorisait pas. Le token peut être une virgule, une barre, un guillemet simple, un booléen en majuscule ou du texte supplémentaire après le document JSON.
- Littéraux Python
- Python utilise
True,FalseetNone. JSON utilisetrue,falseetnull. - Commentaires
- Les commentaires sont fréquents en JavaScript et JSONC mais ne sont pas du JSON valide. Avant d’envoyer les données à un parseur JSON, retirez les commentaires de ligne
//et les commentaires de bloc/* */. - Délimiteurs de code Markdown
- Les réponses de LLM enveloppent souvent le JSON dans des délimiteurs
```json. Retirez ces marqueurs avant de parser ou d’envoyer la charge à une API.
Questions par outil
- JSON Fix — Comment réparer du JSON invalide ?
- Collez le JSON cassé dans JSON Fix, cliquez sur Repair & Format. Il corrige les virgules finales, les guillemets simples, les clés sans guillemets, les littéraux Python, les commentaires et les délimiteurs Markdown en un seul passage.
- JSON Validate — Quelle est la différence entre valider et parser du JSON ?
- Le parsing convertit le JSON en valeur utilisable ; la validation confirme seulement qu ’il pouvait être parsé. Un
JSON.parseréussi est la validation — voir JSON Validator. - JSON Viewer — Pourquoi mon arbre est-il vide ?
- Un arbre ne peut être construit qu’à partir de JSON parseable. Réparez d’abord les erreurs courantes avec JSON Fix, puis chargez le résultat nettoyé dans le JSON Viewer.
- JSON Diff — Pourquoi les versions triée et non triée sont-elles signalées comme identiques ?
- Les objets JSON sont, par spécification, non ordonnés. JSON Diff normalise les clés avant la comparaison, donc seules les vraies différences de valeur apparaissent.
- JSON to TypeScript — Les types générés sont-ils validés à l’exécution ?
- Non. JSON to TypeScript génère des interfaces à la compilation. Pour la validation à l’exécution, combinez-les à Zod ou décrivez la forme avec JSON Schema.
- JSON Minify — Quelle économie apporte la minification ?
- Typiquement entre 15 et 50 % avant la compression HTTP. Si votre serveur envoie déjà
Content-Encoding: gzipoubr, l’économie marginale de minify est faible. - JSON Stringify — Comment décoder une chaîne JSON doublement encodée ?
- Cliquez sur Unstringify dans JSON Stringify, ou appelez
JSON.parsedeux fois si l’entrée commence par un guillemet échappé. - JSON ⇄ CSV — Comment les objets imbriqués sont-ils représentés ?
- Chaque objet ou tableau imbriqué est écrit en texte JSON dans la cellule, ce qui rend la conversion réversible. Voir JSON to CSV.
- JSON ⇄ XML — Comment faire d’une valeur un attribut XML ?
- Préfixez la clé avec
@(par exemple@id) ; le texte de l’élément va sous#text; les tableaux deviennent des éléments répétés. Voir JSON to XML. - YAML — Pourquoi mon YAML ne se parse pas ?
- Presque toujours l’indentation — un caractère de tabulation (YAML interdit les tabulations) ou des frères mal alignés. Passez-le par le formateur YAML, qui révèle et normalise les deux.
- Base64 — Quelle est la différence entre Base64 et Base64url ?
- Le Base64 standard utilise
+et/avec un padding=; le Base64url, compatible URL, les remplace par-et_et supprime le padding, pour que la valeur soit sûre dans des URL et des JWT. Voir Base64. - URL Decode — Pourquoi mon
+ne se décode-t-il pas en espace ? - Dans une query string, un espace peut apparaître comme
+(encodage de formulaire) ou%20.decodeURIComponentne transforme pas+en espace — remplacez-le vous-même au préalable si vous avez des données en encodage de formulaire. Voir URL Decode. - JWT Decode — Vérifie-t-il la signature ?
- Non. JWT Decode lit les claims ; il ne vérifie pas la signature. Vérifiez toujours côté serveur et configurez votre bibliothèque avec l’algorithme exact attendu (n’acceptez jamais
alg: none).
Quel article d’erreur me faut-il ?
Si vous avez la chaîne d’erreur exacte, sautez directement à l’article dédié :
- « Unexpected token < in JSON at position 0 » → votre fetch a renvoyé du HTML
- « Unexpected token u in JSON at position 0 » → vous avez parsé
undefined - « Unexpected token o in JSON at position 1 » → un objet a été stringifié en
[object Object] - « Unexpected end of JSON input » → structure tronquée ou non fermée
- « Unexpected non-whitespace character after JSON data » → données en trop après une valeur complète (NDJSON ?)
- « Unterminated string in JSON » → une chaîne ouverte mais jamais fermée
- « Bad escaped character in JSON » → échappement antislash invalide (p. ex.
\x, chemins Windows) - « Bad control character in string literal in JSON » → tabulation/nouvelle ligne/octet de contrôle brut dans une chaîne
- « Expected double-quoted property name… » → virgule finale
- « [object Object] is not valid JSON » → objet stringifié avant parsing
- Pas sûr ? → commencez par la vue d’ensemble : Comment corriger les erreurs JSON.parse Unexpected Token
Comment le traitement local protège la vie privée
Les actions de réparation, validation, formatage, minification et copie s’exécutent dans votre onglet de navigateur. L’outil n’a pas besoin d’endpoint d’upload pour traiter votre JSON. C’est important pour des échantillons d’API, des charges de webhooks, des fragments de configuration internes ou des sorties de débogage qui peuvent contenir des identifiants privés. Vous devriez toujours retirer les secrets avant de coller des exemples sur un site, mais cet outil est conçu pour que le flux principal JSON reste local.
Le site peut utiliser des logs d’hébergement et des scripts d’analytics autour de la page, comme décrit dans la politique de confidentialité. Ces systèmes ne devraient pas recevoir le contenu que vous collez dans l’éditeur pour la réparation. Si une charge contient des identifiants, des jetons d’accès, des enregistrements clients ou des secrets de production, remplacez ces valeurs par des placeholders sûrs avant le débogage.
Ce qu’est JSON et pourquoi il est strict
JSON signifie JavaScript Object Notation, mais le JSON moderne est indépendant du langage. Python, Go, Java, PHP, Ruby, Rust, bases de données, files d’attente, systèmes de logs et code de navigateur peuvent tous lire le même document JSON parce que sa grammaire est délibérément petite. Cette rigueur est utile : un parseur JSON n’exécute ni fonctions, ni constructeurs, ni dates, ni commentaires, ni expressions. Il n’accepte que des données.
La contrepartie : un texte copié depuis un littéral d’objet JavaScript, un dictionnaire Python, une configuration TypeScript ou une réponse Markdown peut sembler familier tout en restant du JSON invalide. La réparation aide à transformer ce presque-JSON en données qu’un parseur strict peut accepter.
Avant d’utiliser du JSON réparé
Une réparation réussie signifie que le texte peut être converti en syntaxe JSON valide. Elle ne prouve pas que la charge est correcte pour votre endpoint ou votre application. Avant d’utiliser du JSON réparé en production, vérifiez les champs obligatoires, les clés inconnues, les types de valeurs, les longueurs de tableaux, les formats de dates, les valeurs d’enum, la gestion de null et si les identifiants doivent être des chaînes ou des nombres.
Si la charge contrôle des permissions, de la facturation, la suppression de données ou un comportement visible par les clients, comparez-la à un échantillon connu-bon ou à un schéma après la réparation. Pour le travail API, validez d’abord la syntaxe, puis le contrat métier.
Guides de réparation JSON
Pôles thématiques
- JSON Parse Errors: Read the Message, Jump to the Fix
- Fix Invalid JSON: From 'What's Wrong' to a Clean File
- JSON Formatter, Validator, Viewer: Pick the Right Tool
- Repair LLM JSON Output: Handling Almost-JSON from AI
- Privacy: JSON Tools That Don't Leave Your Browser
- JSON Interop: YAML, CSV, XML, JWT, Schema
Guides spécifiques
- Comment décoder des chaînes Base64 (et des payloads JWT)
- Encodage URL : encodez les paramètres de requête et les chemins
- Convertir YAML en JSON (et éviter les erreurs d’indentation)
- Convertir JSON en CSV : aplatir un tableau d’objets
- Convertir JSON en XML : racine, attributs et tableaux
- Échapper du JSON comme littéral de chaîne (et décoder du JSON doublement encodé)
- Corriger les virgules finales en JSON
- Corriger les guillemets simples en JSON
- Corriger les clés sans guillemets en JSON
- Réparer le JSON produit par un LLM
- Corriger l’erreur de parse JSON : Expected Property Name
- JSON vs littéral d’objet JavaScript
- Validez le JSON avant les requêtes API
- Formateur JSON vs JSON Repair
- Corriger les erreurs JSON Unexpected Token
- Convertisseur JSON vers objet JavaScript