Skip to content

Échappement JSON (JSON Escape / Stringify)

Échappez tout texte ou JSON en une chaîne JSON valide dans votre navigateur. Gère guillemets, sauts de ligne, tabulations, Unicode et barres obliques. 100 % privé, sans envoi.

Sans pistage Fonctionne dans le navigateur Gratuit
Options
Entourer de guillemets doubles
Échapper les caractères non-ASCII (\uXXXX)
Échapper la barre oblique (\/)
0 car.
Chaîne échappée
0 car.
Vérifié pour la conformité à la spécification JSON, l'exactitude des paires de substitution, la sûreté des allers-retours et l'échappement de barre oblique pour l'intégration HTML — Équipe d'ingénierie Go Tools · 10 juin 2026

Qu'est-ce que l'échappement JSON ?

L'échappement JSON est le processus de conversion d'une chaîne brute en une forme sûre à intégrer dans un document JSON. JSON possède un petit ensemble de caractères porteurs de sens structurel — le guillemet double délimite les chaînes, la barre oblique inverse débute une séquence d'échappement — plus des caractères de contrôle (sauts de ligne, tabulations) qui ne peuvent pas apparaître littéralement à l'intérieur d'une chaîne. L'échappement remplace chacun d'eux par une séquence sûre de deux caractères (\", \\, \n, \t) ou par une séquence d'échappement Unicode \uXXXX, afin que la chaîne résultante s'analyse proprement partout.

Vous avez recours à l'échappement JSON plus souvent qu'on ne le croit. Le cas le plus courant est le JSON-dans-JSON : une enveloppe de webhook, une charge utile de file de messages ou un journal d'audit stocke un corps de requête comme champ de chaîne, ce qui signifie que le JSON interne doit être échappé avant de pouvoir être affecté. Un autre cas est l'écriture manuelle de configuration JSON : coller un script shell multiligne, une requête SQL ou un extrait de code dans une seule valeur JSON exige de transformer chaque saut de ligne en \n. Un troisième est la construction manuelle de corps de requête REST dans des outils comme curl, où une chaîne JSON entre guillemets doit être échappée pour survivre au shell et à la couche HTTP.

Cet outil a trois atouts par rapport à un échappeur naïf. Premièrement, il s'appuie sur les règles exactes de la spécification JSON — la même logique qu'un sérialiseur conforme — donc la sortie fait un aller-retour sans perte : échappez ici, analysez n'importe où, récupérez vos octets. Deuxièmement, le mode optionnel compatible ASCII convertit chaque caractère non-ASCII (y compris les emojis astraux, gérés comme paires de substitution) en \uXXXX pour les systèmes qui ne peuvent être fiables avec l'UTF-8. Troisièmement, tout s'exécute à 100 % dans votre navigateur — vos charges utiles, qui contiennent souvent des données personnelles, jetons et secrets, ne touchent jamais un serveur. Pour inverser le processus, utilisez notre outil Déséchappement JSON ; pour valider le JSON d'abord, voyez le Formateur JSON.

// Input text
She said "hi"
then left.

// Escaped (Wrap on) — identical to JSON.stringify(input)
"She said \"hi\"\nthen left."

// Escaped (Wrap off) — just the body, for hand-built JSON
She said \"hi\"\nthen left.

// JSON-in-JSON
{"a":1}  ->  "{\"a\":1}"  ->  {"payload": "{\"a\":1}"}

Fonctionnalités clés

Échappement conforme à la spécification

S'appuie sur les règles exactes de la spécification JSON — guillemets, barres obliques inverses, sauts de ligne, tabulations, retours chariot et caractères de contrôle sont échappés à l'identique d'un sérialiseur conforme. La sortie fait un aller-retour sans perte dans tout analyseur JSON.

Sortie avec ou sans guillemets

Entourer de guillemets doubles activé donne une chaîne JSON complète (comme JSON.stringify) ; désactivé donne seulement le corps échappé, pour quand vous saisissez vous-même les guillemets dans un document JSON écrit à la main.

Mode \uXXXX compatible ASCII

Convertissez en option chaque caractère au-dessus de U+007F en séquence d'échappement Unicode, les caractères astraux comme les emojis étant gérés comme des paires de substitution correctes. La sortie est de l'ASCII pur, sûre pour les pipelines hérités qui gèrent mal l'UTF-8.

Échappement de barre oblique compatible HTML

Échapper la barre oblique transforme / en \/, neutralisant la séquence </script> pour que le JSON puisse être intégré dans une balise HTML <script> sans la fermer prématurément. Désactivé par défaut pour une sortie propre partout ailleurs.

Inverser pour vérifier l'aller-retour

Un seul bouton Inverser le sens bascule en mode déséchappement sur place et réinjecte la sortie comme entrée, vous permettant de confirmer que échappement → déséchappement retourne votre texte original octet pour octet avant de l'expédier.

Confidentialité 100 % côté navigateur

Tout l'échappement s'exécute côté client — vos charges utiles (données personnelles, jetons, secrets) ne quittent jamais le navigateur. Vérifiez-le dans l'onglet Réseau : zéro requête au collage. La seule façon sûre d'échapper des données sensibles dans un outil en ligne.

Exemples

Imbriquer du JSON dans du JSON (JSON-dans-JSON)

{"event":"signup","user":{"id":42,"name":"Alice"}}

Échappez cet objet pour qu'il puisse exister comme valeur de chaîne à l'intérieur d'un autre document JSON — par exemple un champ de charge utile de webhook ou une enveloppe de message Kafka. Avec l'option Entourer activée, la sortie est prête à coller directement après un deux-points.

Extrait de code multiligne dans un champ de configuration

function greet(name) {
  return `Hello, ${name}!`;
}

Transformez une fonction JS multiligne en une chaîne JSON sur une seule ligne. Les sauts de ligne deviennent \n et le gabarit entre accents graves reste intact — collez-le dans une valeur de configuration JSON sans casser le fichier.

Texte avec guillemets et tabulations

She said "hello"	then left.

Les guillemets doubles sont échappés en \" et la tabulation devient \t, de sorte que la chaîne peut être insérée sans risque dans n'importe quel analyseur JSON, ligne de journal ou corps de requête REST.

Sortie compatible ASCII pour systèmes hérités

Price: 9.99€ — café société

Activez Échapper les caractères non-ASCII pour convertir € et les lettres accentuées en \uXXXX. Le résultat est de l'ASCII pur, sûr pour les systèmes qui altèrent l'UTF-8 en transit.

Comment utiliser

  1. 1

    Collez votre texte ou JSON

    Saisissez ou collez n'importe quoi dans le champ de saisie — un objet JSON, un extrait de code, une ligne de journal ou du texte brut. Le résultat échappé apparaît instantanément. Cliquez sur « Charger un exemple » pour essayer un échantillon comme une charge utile JSON-dans-JSON ou une fonction multiligne.

  2. 2

    Choisissez les options d'échappement

    Gardez « Entourer de guillemets doubles » activé pour une chaîne JSON complète (comme JSON.stringify), ou désactivé pour obtenir seulement le corps échappé. Activez « Échapper les caractères non-ASCII » pour une sortie \uXXXX en ASCII pur, et « Échapper la barre oblique » lors de l'intégration de JSON dans une balise HTML <script>.

  3. 3

    Copiez la chaîne échappée

    Cliquez sur Copier pour récupérer le résultat, prêt à coller dans un document JSON, un corps de requête REST ou un fichier de configuration. Cliquez sur Inverser le sens pour basculer en mode déséchappement et vérifier un aller-retour sans perte.

Pièges courants de l'échappement

Double échappement (échapper un texte déjà échappé)

Échapper deux fois transforme \n en \\n et \" en \\\", donc le consommateur voit une barre oblique inverse suivie de n littérale au lieu d'un saut de ligne. Cela arrive généralement quand le texte avait déjà été échappé en JSON en amont. Déséchappez d'abord (Inverser le sens) pour vérifier, puis échappez exactement une fois.

✗ Incorrect
Input already escaped: line1\nline2
Escaped again -> line1\\nline2  (literal backslash-n)
✓ Correct
Raw input: line1
line2
Escaped once -> line1\nline2  (real newline encoded)

Oublier les guillemets environnants

Avec Entourer désactivé, vous obtenez seulement le corps échappé, pas une chaîne JSON complète. Coller cela directement là où une valeur est attendue produit du JSON invalide car les guillemets manquent. Soit gardez Entourer activé, soit assurez-vous de saisir vous-même les guillemets.

✗ Incorrect
{"msg": hello \"world\"}
// Missing quotes around the value -> invalid JSON
✓ Correct
{"msg": "hello \"world\""}
// Wrap on supplies the quotes -> valid JSON

Sur-échapper le non-ASCII inutilement

Activer Échapper les caractères non-ASCII alors que le consommateur gère très bien l'UTF-8 ne fait qu'alourdir la sortie et nuire à la lisibilité — café devient caf\u00e9 sans raison. Laissez l'option désactivée sauf si un système hérité précis exige de l'ASCII pur.

✗ Incorrect
café  ->  caf\u00e9   (no downstream need; just noise)
✓ Correct
café  ->  café         (valid JSON, readable, smaller)

Cas d'utilisation courants

Charges utiles de webhook JSON-dans-JSON
Échappez un corps de requête pour qu'il puisse être stocké comme champ de chaîne dans une enveloppe de webhook, un message Kafka ou un journal d'audit. Gardez Entourer activé et la sortie est prête à affecter à une clé du document externe.
Extraits multilignes dans la configuration
Transformez un script shell multiligne, une requête SQL ou un extrait de code en une seule valeur de chaîne JSON. Chaque saut de ligne devient \n pour que le fichier de configuration JSON reste valide sur une ligne.
Corps de requête REST construits à la main
Échappez une chaîne JSON avant de l'insérer dans un argument curl --data ou un client HTTP, pour que les guillemets et sauts de ligne survivent au shell et au réseau sans casser la requête.
Encodage de chaîne sûr pour les journaux
Échappez le contenu fourni par l'utilisateur avant de l'écrire dans une ligne de journal structurée, empêchant les guillemets ou sauts de ligne injectés de corrompre le format du journal ou un analyseur de journaux JSON en aval.
Intégrations héritées en ASCII uniquement
Produisez une sortie \uXXXX en ASCII pur pour les passerelles SOAP, les en-têtes d'e-mail ou les anciens systèmes qui altèrent l'UTF-8 en transit, tout en restant entièrement décodable par tout analyseur JSON moderne.
Intégration de JSON dans du HTML
Échappez les barres obliques pour qu'un bloc JSON puisse être intégré directement dans une balise <script> pour les pages rendues côté serveur, sans qu'un </script> dans les données ne ferme la balise trop tôt.

Détails techniques

Algorithme d'échappement
L'outil sérialise votre entrée avec les règles de chaîne de la spécification JSON : U+0022 (") → \", U+005C (\) → \\, U+0008 → \b, U+000C → \f, U+000A → \n, U+000D → \r, U+0009 → \t, et tout autre caractère sous U+0020 → \u00XX. Avec Entourer activé, les guillemets doubles environnants sont inclus ; désactivé, ils sont retirés. Cela correspond exactement à la sortie d'un sérialiseur conforme, garantissant des allers-retours sans perte.
Unicode et paires de substitution
Par défaut, les caractères au-dessus de U+007F sont émis en UTF-8 littéral, ce que JSON autorise. Avec Échapper les caractères non-ASCII activé, chacun de ces caractères est converti en \uXXXX via son unité de code UTF-16 ; les caractères hors du plan multilingue de base (emojis, écritures rares) sont encodés en une paire de substitution de deux séquences \uXXXX — par exemple 😀 (U+1F600) devient \ud83d\ude00, la même représentation que produit un sérialiseur JSON.
Barre oblique et contexte HTML
JSON n'exige pas l'échappement de /, elle est donc préservée par défaut. Quand Échapper la barre oblique est activé, chaque / devient \/. La seule raison pratique de le faire est l'intégration HTML : dans une balise <script>, la sous-chaîne littérale </script> ferme la balise quel que soit le contexte JSON, donc échapper la barre en <\/script> garde le JSON intégré intact tout en restant conforme à la spécification.

Bonnes pratiques

Gardez Entourer activé pour des chaînes complètes
Quand vous avez besoin d'une valeur à affecter dans du code ou à coller après un deux-points en JSON, gardez Entourer de guillemets doubles activé — la sortie est une chaîne JSON complète et analysable, identique à JSON.stringify. Désactivez-le seulement quand vous saisissez vous-même les guillemets environnants.
Laissez l'échappement Unicode désactivé sauf nécessité
L'UTF-8 brut est du JSON valide et bien plus lisible. Activez Échapper les caractères non-ASCII uniquement pour un système en aval précis qui gère mal l'UTF-8 (SOAP hérité, certains pipelines de journaux, fichiers source en ASCII uniquement). Tout échapper par défaut ne fait que rendre la sortie plus bruyante.
N'échappez les barres obliques que pour l'intégration HTML
L'échappement de barre oblique compte dans un seul cas : du JSON intégré dans une balise HTML <script>. Hors de ce contexte, il ajoute du désordre sans bénéfice, alors laissez-le désactivé pour les corps REST, les fichiers de configuration et les charges utiles de messages.
Vérifiez les allers-retours avec Inverser
Avant d'expédier des données échappées dans un pipeline, cliquez sur Inverser le sens pour les déséchapper et confirmer que vous récupérez le texte original. Cela détecte le double échappement accidentel — source fréquente de \\n apparaissant là où \n était voulu. Inversez à tout moment avec notre outil Déséchappement JSON.

Questions fréquentes

Que fait cet outil d'échappement JSON ?
Il convertit n'importe quel texte — un objet JSON, un extrait de code, une ligne de journal ou de la prose — en une chaîne JSON valide, entièrement dans votre navigateur. Les caractères spéciaux qui casseraient un document JSON sont échappés : les guillemets doubles deviennent \", les barres obliques inverses deviennent \\, les sauts de ligne deviennent \n, les tabulations deviennent \t, les retours chariot deviennent \r, et les autres caractères de contrôle deviennent \uXXXX. Le résultat est une chaîne que vous pouvez coller en toute sécurité comme valeur dans un document JSON, un corps de requête REST, un fichier de configuration ou une colonne de base de données. Rien n'est envoyé — la conversion s'exécute à 100 % côté client, donc c'est sûr pour les charges utiles contenant des données personnelles, des secrets ou des données internes.
Quelle est la différence entre échappement JSON et JSON stringify ?
Ce sont deux angles d'une même opération de fond. JSON.stringify() en JavaScript prend une valeur et produit sa représentation textuelle JSON ; lorsque la valeur est une chaîne, cela signifie l'entourer de guillemets doubles et échapper les caractères spéciaux à l'intérieur — ce qui correspond exactement à l'échappement JSON. Cet outil fait précisément cela : avec Entourer de guillemets doubles activé, la sortie équivaut à JSON.stringify(votreTexte) ; désactivé, vous obtenez le corps échappé sans les guillemets, ce dont vous avez besoin quand vous construisez le JSON à la main et avez déjà saisi les guillemets. Donc si vous avez cherché json stringify en ligne, c'est l'outil — il vous donne à la fois la forme entre guillemets et sans guillemets.
Mes données sont-elles envoyées quelque part ?
Non. Tout l'échappement s'exécute entièrement dans votre navigateur en JavaScript — votre texte n'est jamais transmis, stocké, journalisé ni analysé sur un serveur. Cela rend l'outil sûr pour les charges utiles d'API avec données personnelles, jetons d'authentification, configuration interne et secrets de production. Vous pouvez le vérifier dans l'onglet Réseau de votre navigateur : saisir ou coller ne déclenche aucune requête réseau. Il n'y a aucun cookie pour vos données et aucun outil d'analyse tiers qui capture ce que vous collez.
Quand ai-je besoin de l'option \uXXXX (échapper les caractères non-ASCII) ?
JSON autorise l'UTF-8 brut, donc par défaut un é reste un é et un emoji reste un emoji — parfaitement valide et plus lisible. Activez Échapper les caractères non-ASCII uniquement quand un système en aval ne peut pas être fiable avec l'UTF-8 : anciennes passerelles SOAP/XML, certains pipelines de journalisation, en-têtes d'e-mail, ou fichiers source qui doivent rester en ASCII pur. Avec cette option, chaque caractère au-dessus de U+007F devient une séquence \uXXXX (les caractères astraux comme les emojis deviennent une paire de substitution, ex. 😀 → \ud83d\ude00). La sortie échappée est de l'ASCII octet pour octet et se redécode en l'Unicode original dans tout analyseur JSON conforme.
Comment imbriquer un objet JSON dans une autre chaîne JSON (JSON-dans-JSON) ?
Collez le JSON interne dans le champ de saisie, gardez Entourer de guillemets doubles activé, et copiez le résultat — c'est désormais une chaîne échappée unique que vous pouvez affecter à une clé du document externe. Par exemple {"a":1} devient "{\"a\":1}", que vous placez après un deux-points : {"payload": "{\"a\":1}"}. Ce double encodage est courant dans les enveloppes de webhook, les charges utiles de files de messages et les journaux d'audit qui stockent un corps de requête comme chaîne. Pour l'inverser et lire l'objet interne, utilisez notre outil Déséchappement JSON.
Que fait l'option Échapper la barre oblique (\/) ?
La barre oblique / est un caractère normal en JSON et ne nécessite pas d'échappement, elle est donc laissée telle quelle par défaut. L'option existe pour un cas précis : imbriquer du JSON dans une balise HTML <script>, où la séquence </script> fermerait prématurément la balise. Échapper / en \/ transforme </script> en <\/script>, ce qui reste du JSON valide mais n'est plus un terminateur de balise. Activez-la uniquement quand vous intégrez du JSON dans du HTML ; pour tout autre usage, laissez-la désactivée pour une sortie plus propre.
Gère-t-il correctement les sauts de ligne, tabulations et caractères de contrôle ?
Oui. L'outil s'appuie sur les règles d'échappement exactes de la spécification JSON : saut de ligne → \n, retour chariot → \r, tabulation → \t, retour arrière → \b, saut de page → \f, guillemet double → \", barre oblique inverse → \\, et tout autre caractère de contrôle sous U+0020 → \uXXXX. C'est identique à ce que produit un sérialiseur JSON conforme, donc la sortie fait un aller-retour sans perte : échappez-la ici, analysez-la n'importe où, et vous récupérez votre texte original octet pour octet.