Skip to content

Escape JSON

Trasforma qualsiasi testo o JSON in una stringa JSON valida, direttamente nel browser. Gestisce virgolette, a capo, tabulazioni, Unicode e barre. 100% privato, nessun caricamento, istantaneo.

Niente tracciamento Funziona nel browser Gratuito
Opzioni
Racchiudi tra virgolette doppie
Escape dei caratteri non ASCII (\uXXXX)
Escape della barra (\/)
0 caratteri
Stringa sottoposta a escape
0 caratteri
Verificato per conformità alla specifica JSON, correttezza delle coppie surrogate, sicurezza dei round-trip ed escape della barra per l'incorporamento in HTML — Team di Ingegneria Go Tools · Jun 10, 2026

Cos'è l'escape JSON?

L'escape JSON è il processo di conversione di una stringa grezza in una forma sicura da incorporare dentro un documento JSON. JSON ha un piccolo insieme di caratteri che hanno un significato strutturale — la virgoletta doppia delimita le stringhe, la barra rovesciata inizia una sequenza di escape — più i caratteri di controllo (a capo, tabulazioni) che non possono comparire letteralmente dentro una stringa. L'escape sostituisce ciascuno di questi con una sequenza sicura di due caratteri (\", \\, \n, \t) o con un escape Unicode \uXXXX, così la stringa risultante viene interpretata senza problemi ovunque.

L'escape JSON serve più spesso di quanto si pensi. Il caso più comune è JSON-in-JSON: la busta di un webhook, il payload di una coda di messaggi o un log di audit memorizza il corpo di una richiesta come campo stringa, il che significa che il JSON interno deve essere sottoposto a escape prima di poter essere assegnato. Un altro è scrivere a mano la configurazione JSON: incollare uno script shell multilinea, una query SQL o uno snippet di codice in un singolo valore JSON richiede di trasformare ogni a capo in \n. Un terzo è costruire a mano i corpi delle richieste REST in strumenti come curl, dove una stringa JSON tra virgolette deve essere sottoposta a escape per sopravvivere alla shell e al livello HTTP.

Questo strumento ha tre punti di forza rispetto a un escaper ingenuo. Primo, si basa sulle regole esatte della specifica JSON — la stessa logica usata da un serializzatore conforme — quindi l'output fa un round-trip senza perdite: fai l'escape qui, fai il parsing ovunque, riottieni i tuoi byte. Secondo, la modalità ASCII-safe opzionale converte ogni carattere non ASCII (incluse le emoji astrali, gestite come coppie surrogate) in \uXXXX per i sistemi a cui non ci si può affidare con l'UTF-8. Terzo, tutto gira al 100% nel tuo browser — i tuoi payload, che spesso contengono dati personali, token e segreti, non toccano mai un server. Per invertire il processo, usa il nostro strumento Unescape JSON; per validare prima il JSON, vedi il Formattatore 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}"}

Caratteristiche principali

Escape conforme alla specifica

Si basa sulle regole esatte della specifica JSON — virgolette, barre rovesciate, a capo, tabulazioni, ritorni a capo e caratteri di controllo vengono sottoposti a escape in modo identico a un serializzatore conforme. L'output fa un round-trip senza perdite attraverso qualsiasi parser JSON.

Output con o senza virgolette

Racchiudi tra virgolette doppie attivo dà una stringa JSON completa (uguale a JSON.stringify); disattivo dà solo il corpo sottoposto a escape, per quando sei tu a scrivere le virgolette in un documento JSON redatto a mano.

Modalità ASCII-safe \uXXXX

Converti facoltativamente ogni carattere oltre U+007F in un escape Unicode, con i caratteri astrali come le emoji gestiti come coppie surrogate corrette. L'output è puro ASCII, sicuro per le pipeline legacy che gestiscono male l'UTF-8.

Escape della barra sicuro per HTML

Escape della barra trasforma / in \/, neutralizzando la sequenza </script> così il JSON può essere inserito dentro un tag HTML <script> senza chiuderlo prematuramente. Disattivato per impostazione predefinita per un output pulito ovunque altrove.

Inverti per verificare il round-trip

Un solo pulsante Inverti direzione passa alla modalità unescape sul posto e reimmette l'output come input, così puoi confermare che escape → unescape restituisca il testo originale byte per byte prima di rilasciarlo.

Privacy 100% nel browser

Tutto l'escape gira lato client — i tuoi payload (dati personali, token, segreti) non lasciano mai il browser. Verificalo nella scheda Rete: zero richieste quando incolli. L'unico modo sicuro per fare l'escape di dati sensibili in uno strumento online.

Esempi

Incorporare JSON dentro JSON (JSON-in-JSON)

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

Fai l'escape di questo oggetto così che possa vivere come valore stringa dentro un altro documento JSON — ad esempio un campo del payload di un webhook o la busta di un messaggio Kafka. Con l'opzione Racchiudi attiva, l'output è pronto da incollare subito dopo i due punti.

Snippet di codice multilinea in un campo di configurazione

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

Trasforma una funzione JS multilinea in una stringa JSON su una sola riga. Gli a capo diventano \n e il template con i backtick resta intatto — incollalo come valore di configurazione JSON senza rompere il file.

Testo con virgolette e tabulazioni

She said "hello"	then left.

Le virgolette doppie diventano \" e la tabulazione diventa \t, così la stringa è sicura da inserire in qualsiasi parser JSON, riga di log o corpo di una richiesta REST.

Output ASCII-safe per sistemi legacy

Price: 9.99€ — café société

Attiva Escape dei caratteri non ASCII per convertire € e le lettere accentate in \uXXXX. Il risultato è puro ASCII, sicuro per i sistemi che alterano l'UTF-8 durante il trasferimento.

Come si usa

  1. 1

    Incolla il tuo testo o JSON

    Inserisci o incolla qualsiasi cosa nel campo di input — un oggetto JSON, uno snippet di codice, una riga di log o testo semplice. Il risultato sottoposto a escape appare all'istante. Fai clic su 'Carica esempio' per provare un campione come un payload JSON-in-JSON o una funzione multilinea.

  2. 2

    Scegli le opzioni di escape

    Lascia attivo 'Racchiudi tra virgolette doppie' per una stringa JSON completa (uguale a JSON.stringify), oppure disattivalo per ottenere solo il corpo sottoposto a escape. Attiva 'Escape dei caratteri non ASCII' per un output \uXXXX di puro ASCII e 'Escape della barra' quando inserisci JSON dentro un tag HTML <script>.

  3. 3

    Copia la stringa sottoposta a escape

    Fai clic su Copia per prendere il risultato, pronto da incollare in un documento JSON, nel corpo di una richiesta REST o in un file di configurazione. Fai clic su Inverti direzione per passare alla modalità unescape e verificare un round-trip senza perdite.

Errori comuni nell'escape

Doppio escape (fare l'escape di testo già sottoposto a escape)

Eseguire l'escape due volte trasforma \n in \\n e \" in \\\", quindi il consumatore vede una barra rovesciata letterale seguita da n invece di un a capo. Di solito accade quando il testo era già stato sottoposto a escape a monte. Fai prima l'unescape (Inverti direzione) per controllare, poi fai l'escape esattamente una volta.

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

Dimenticare le virgolette circostanti

Con Racchiudi disattivo ottieni solo il corpo sottoposto a escape, non una stringa JSON completa. Incollarlo direttamente dove ci si aspetta un valore produce JSON non valido perché mancano le virgolette. O tieni Racchiudi attivo, o assicurati di scrivere tu stesso le virgolette.

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

Escape non necessario dei caratteri non ASCII

Attivare Escape dei caratteri non ASCII quando il consumatore gestisce bene l'UTF-8 non fa che gonfiare l'output e peggiorare la leggibilità — café diventa caf\u00e9 senza motivo. Lascia l'opzione disattivata salvo che uno specifico sistema legacy richieda puro ASCII.

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

Casi d'uso comuni

Payload di webhook JSON-in-JSON
Fai l'escape del corpo di una richiesta così che possa essere memorizzato come campo stringa dentro la busta di un webhook, un messaggio Kafka o un log di audit. Tieni Racchiudi attivo e l'output è pronto da assegnare a una chiave del documento esterno.
Snippet multilinea nella configurazione
Trasforma uno script shell multilinea, una query SQL o uno snippet di codice in un singolo valore stringa JSON. Ogni a capo diventa \n così il file di configurazione JSON resta valido su una sola riga.
Corpi di richieste REST scritti a mano
Fai l'escape di una stringa JSON prima di inserirla in un argomento curl --data o in un client HTTP, così virgolette e a capo sopravvivono alla shell e al transito senza rompere la richiesta.
Codifica di stringhe sicura per i log
Fai l'escape del contenuto fornito dall'utente prima di scriverlo in una riga di log strutturata, impedendo che virgolette o a capo iniettati corrompano il formato del log o un parser di log JSON a valle.
Integrazioni legacy solo ASCII
Produci un output \uXXXX di puro ASCII per gateway SOAP, intestazioni di email o sistemi più vecchi che alterano l'UTF-8 durante il transito, rimanendo comunque pienamente decodificabile da qualsiasi parser JSON moderno.
Inserimento di JSON dentro HTML
Fai l'escape delle barre così che un blob JSON possa essere incorporato direttamente dentro un tag <script> per pagine renderizzate sul server, senza che un </script> nei dati chiuda il tag in anticipo.

Dettagli tecnici

Algoritmo di escape
Lo strumento serializza il tuo input con le regole delle stringhe della specifica JSON: U+0022 (") → \", U+005C (\) → \\, U+0008 → \b, U+000C → \f, U+000A → \n, U+000D → \r, U+0009 → \t e qualsiasi altro carattere sotto U+0020 → \u00XX. Con Racchiudi attivo, le virgolette doppie circostanti sono incluse; con l'opzione disattivata vengono rimosse. Questo corrisponde esattamente all'output di un serializzatore conforme, garantendo round-trip senza perdite.
Unicode e coppie surrogate
Per impostazione predefinita, i caratteri oltre U+007F vengono emessi come UTF-8 letterale, cosa che JSON consente. Con Escape dei caratteri non ASCII attivo, ogni carattere di questo tipo viene convertito in \uXXXX usando la sua unità di codice UTF-16; i caratteri fuori dal Basic Multilingual Plane (emoji, scritture rare) sono codificati come una coppia surrogata di due escape \uXXXX — ad esempio 😀 (U+1F600) diventa \ud83d\ude00, la stessa rappresentazione prodotta da un serializzatore JSON.
Barra e contesto HTML
JSON non richiede l'escape di /, quindi per impostazione predefinita viene preservata. Quando Escape della barra è attivo, ogni / diventa \/. L'unico motivo pratico per farlo è l'incorporamento in HTML: dentro un tag <script>, la sottostringa letterale </script> chiude il tag indipendentemente dal contesto JSON, quindi fare l'escape della barra in <\/script> mantiene intatto il JSON inserito rimanendo valido secondo la specifica.

Buone pratiche

Tieni Racchiudi attivo per stringhe complete
Quando ti serve un valore da assegnare nel codice o da incollare dopo i due punti in JSON, tieni attivo Racchiudi tra virgolette doppie — l'output è una stringa JSON completa e analizzabile, identica a JSON.stringify. Disattivalo solo quando scrivi tu stesso le virgolette circostanti.
Lascia disattivato l'escape Unicode salvo necessità
L'UTF-8 grezzo è JSON valido e molto più leggibile. Attiva Escape dei caratteri non ASCII solo per uno specifico sistema a valle che gestisce male l'UTF-8 (SOAP legacy, alcune pipeline di log, file sorgente solo ASCII). Fare l'escape di tutto per impostazione predefinita rende solo l'output più rumoroso.
Fai l'escape delle barre solo per l'incorporamento HTML
L'escape della barra conta in un solo caso: JSON inserito in un tag HTML <script>. Fuori da quel contesto aggiunge disordine senza alcun vantaggio, quindi lascialo disattivato per i corpi REST, i file di configurazione e i payload dei messaggi.
Verifica i round-trip con Inverti
Prima di rilasciare dati sottoposti a escape in una pipeline, fai clic su Inverti direzione per farne l'unescape e confermare che riottieni il testo originale. Questo intercetta il doppio escape accidentale — una fonte frequente di \\n che compare dove era inteso \n. Inverti in qualsiasi momento con il nostro strumento Unescape JSON.

Domande frequenti

Cosa fa questo strumento di escape JSON?
Converte qualsiasi testo — un oggetto JSON, uno snippet di codice, una riga di log o semplice prosa — in una stringa JSON valida, interamente nel tuo browser. I caratteri speciali che romperebbero un documento JSON vengono sottoposti a escape: le virgolette doppie diventano \", le barre rovesciate diventano \\, gli a capo diventano \n, le tabulazioni diventano \t, i ritorni a capo diventano \r e gli altri caratteri di controllo diventano \uXXXX. Il risultato è una stringa che puoi incollare in sicurezza come valore dentro un documento JSON, il corpo di una richiesta REST, un file di configurazione o una colonna di database. Nulla viene caricato — la conversione gira al 100% lato client, quindi è sicura per payload che contengono dati personali, segreti o informazioni interne.
Qual è la differenza tra escape JSON e stringify JSON?
Descrivono la stessa operazione di base da due angolazioni. JSON.stringify() in JavaScript prende un valore e produce la sua rappresentazione testuale JSON; quando il valore è una stringa, significa racchiuderla tra virgolette doppie e fare l'escape dei caratteri speciali al suo interno — cioè esattamente l'escape JSON. Questo strumento fa proprio questo: con Racchiudi tra virgolette doppie attivo, l'output equivale a JSON.stringify(tuoTesto); con l'opzione disattivata ottieni il corpo sottoposto a escape senza le virgolette circostanti, che è ciò che serve quando stai costruendo il JSON a mano e hai già scritto le virgolette. Quindi se hai cercato json stringify, è questo lo strumento — ti dà sia la forma con le virgolette sia quella senza.
I miei dati vengono caricati da qualche parte?
No. Tutto l'escape gira interamente nel tuo browser tramite JavaScript — il tuo testo non viene mai trasmesso, memorizzato, registrato o analizzato su alcun server. Questo rende lo strumento sicuro per payload di API con dati personali, token di autenticazione, configurazioni interne e segreti di produzione. Puoi verificarlo nella scheda Rete del browser: digitare o incollare non genera alcuna richiesta di rete. Non ci sono cookie per il tuo input né analytics di terze parti che catturano ciò che incolli.
Quando mi serve l'opzione \uXXXX (escape dei caratteri non ASCII)?
JSON consente l'UTF-8 grezzo, quindi per impostazione predefinita una é resta una é e un'emoji resta un'emoji — perfettamente valido e più leggibile. Attiva Escape dei caratteri non ASCII solo quando non ci si può fidare di un sistema a valle con l'UTF-8: vecchi gateway SOAP/XML, alcune pipeline di logging, intestazioni di email o file sorgente che devono restare puro ASCII. Con l'opzione attiva, ogni carattere oltre U+007F diventa una sequenza \uXXXX (i caratteri astrali come le emoji diventano una coppia surrogata, ad esempio 😀 → \ud83d\ude00). L'output sottoposto a escape è ASCII byte per byte e si decodifica di nuovo nell'Unicode originale in qualsiasi parser JSON conforme.
Come incorporo un oggetto JSON dentro un'altra stringa JSON (JSON-in-JSON)?
Incolla il JSON interno nell'input, lascia attivo Racchiudi tra virgolette doppie e copia il risultato — ora è una singola stringa sottoposta a escape che puoi assegnare a una chiave del documento esterno. Per esempio {"a":1} diventa "{\"a\":1}", che collochi dopo i due punti: {"payload": "{\"a\":1}"}. Questa doppia codifica è comune nelle buste dei webhook, nei payload delle code di messaggi e nei log di audit che memorizzano il corpo di una richiesta come stringa. Per invertire l'operazione e leggere l'oggetto interno, usa il nostro strumento Unescape JSON.
Cosa fa l'opzione Escape della barra (\/)?
La barra / è un carattere normale in JSON e non richiede escape, quindi per impostazione predefinita viene lasciata invariata. L'opzione esiste per un caso specifico: incorporare JSON dentro un tag HTML <script>, dove la sequenza </script> chiuderebbe il tag prematuramente. Fare l'escape di / in \/ trasforma </script> in <\/script>, che è ancora JSON valido ma non più un terminatore di tag. Attivala solo quando stai inserendo JSON inline dentro HTML; per ogni altro uso, lasciala disattivata per un output più pulito.
Gestisce correttamente a capo, tabulazioni e caratteri di controllo?
Sì. Lo strumento si basa sulle regole di escape esatte della specifica JSON: a capo → \n, ritorno a capo → \r, tabulazione → \t, backspace → \b, avanzamento pagina → \f, virgoletta doppia → \", barra rovesciata → \\ e qualsiasi altro carattere di controllo sotto U+0020 → \uXXXX. Questo è identico a ciò che produce un serializzatore JSON conforme, quindi l'output fa un round-trip senza perdite: fai l'escape qui, fai il parsing ovunque e riottieni il testo originale byte per byte.

Strumenti correlati

Vedi tutti gli strumenti →