Vai al contenuto principale
CuteJSON
↑↓ Naviga Enter Seleziona Esc Chiudi

Come escapare e descapeare le stringhe JSON correttamente

Pubblicato 2 min di lettura Di Akash Kinkar Pandey

Escapare e ciò di cui un documento ha bisogno prima di poter vivere dentro una stringa: un valore JSON che contiene un altro documento JSON, una riga di log, un argomento shell, un fixture incollato in un file di test. Le regole sono brevi, e questo strumento le applica tutte.

Usare lo strumento di escape JSON

Scegli Escape o Unescape, incolla il tuo testo, e premi Converti. Escapando, puoi scegliere di avvolgere il risultato tra virgolette e di escapare tutto sopra ASCII.

Escape di

line1
line2	tab/slash"quote"café

con le opzioni predefinite produce:

"line1\nline2\ttab/slash\"quote\"café"

L’a capo diventa \n, il tab diventa \t, la virgoleta viene escapata, la barra obliqua viene lasciata completamente sola, e café resta testo UTF-8.

Perche la barra obliqua viene lasciata sola

JSON accetta \/ come escape valido per un / letterale, ma nulla nella specifica lo richiede. L’abitudine di escapare le barre oblique viene dall’incorporare JSON dentro un tag HTML <script>, dove una sequenza </script> letterale terminerebbe il tag prematuramente. Questo e un problema diverso con una soluzione diversa, specifico per quel contesto di incorporamento, e questo strumento non lo applica per predefinito. Unescape accetta ancora entrambe le grafie, perche un documento scritto da qualcosa che escape le barre oblique deve ancora essere letto correttamente.

Escape sopra ASCII

Attivare questo converte anche ogni carattere sopra la gamma ASCII in un escape \u, punto di codice per punto di codice. La é in café diventa i sei caratteri barra invertita, u, 0, 0, e, 9, quindi la stringa sopra termina con caf seguito da quello escape invece della lettera stessa. Questo e ciò che vuoi quando il testo escapato deve attraversare qualcosa che non e sicuramente sicuro in UTF-8, come un vecchio sistema o un trasporto che corrompe le codifiche. Lascialo spento per qualsiasi cosa che venga letta come UTF-8, perche la forma escapata e piu difficile da leggere senza vantaggi.

I frammenti vanno bene

Nessuna direzione richiede che l’input sia JSON valido da solo. Escapare parte di un documento, un singolo valore che stai per inserire in una stringa piu grande, e una cosa comune da volere, quindi lo strumento funziona con frammenti e segnala separatamente se il risultato viene analizzato come JSON completo, come una nota invece di un verdetto.

Torna a tutti i post