Fuga/scomparsa di stringhe
Con questo versatile strumento di escape delle stringhe per JSON, HTML, XML, URL e altri formati, è possibile sfuggire o rimuovere i caratteri speciali nelle stringhe. Converte i caratteri speciali nei loro equivalenti codificati o li decodifica, garantendo l'integrità dei dati in diversi contesti. Perfetto per gli sviluppatori web, l'integrazione API e le attività di elaborazione dati.
Domande frequenti
Lo strumento supporta diversi formati di escape, tra cui JSON (virgolette, newline, tabulazioni), entità HTML, entità XML, codifica URL e escape di stringhe JavaScript, consentendo di preparare le stringhe per diversi contesti.
Stringhe di escape per JSON quando è necessario includere caratteri speciali come virgolette, backslash o newline nei valori JSON, garantendo una sintassi JSON valida e prevenendo errori di parsing.
Sì, lo strumento funziona in modo bidirezionale. È possibile decodificare le stringhe codificate per vedere il testo originale, il che lo rende utile per il debug e la comprensione dei dati evasi da API o database.
L'escape HTML converte caratteri come <, >, & e virgolette in entità HTML (<, >, &, ") per prevenire attacchi XSS e problemi di visualizzazione, mentre l'escape JSON gestisce i caratteri che violano la sintassi JSON.
La codifica degli URL (percent-encoding) è un tipo specifico di escape che converte i caratteri speciali nel formato %XX per un uso sicuro negli URL, diverso dall'escape di JSON o HTML.
Un corretto escape delle stringhe previene gli attacchi di tipo injection (XSS, SQL injection), garantendo che l'input dell'utente sia trattato come dati e non come codice eseguibile.
L'escape di JSON segue uno standard rigoroso (RFC 8259) che richiede l'escape di backslash per le virgolette (\"), i backslash (\) e i caratteri di controllo (\n, \t, \r). L'escape delle stringhe in JavaScript è simile ma più permissivo, consentendo escape aggiuntivi come \v (tab verticale), \0 (null) e \x (escape esadecimale). JSON richiede anche coppie surrogate UTF-16 per i caratteri al di fuori del BMP, mentre JavaScript può utilizzare la notazione \u{XXXXXX}. Utilizzare sempre l'escape JSON per le risposte API e l'interscambio di dati per garantire la massima compatibilità.
Ogni linguaggio ha requisiti di escape specifici: Python usa i backslash (\n, \t, \') e supporta le stringhe grezze (r'text'), JavaScript usa escape simili più i letterali dei template, C/C++ richiede l'escape delle virgolette e dei backslash, SQL richiede il raddoppio delle virgolette singole ('') o il loro escape, e gli script di shell necessitano di un attento escape di $, ` e delle virgolette. Per evitare vulnerabilità, utilizzate sempre le funzioni di escape integrate nel vostro linguaggio (come json.dumps() di Python, JSON.stringify() di JavaScript o le query parametrizzate di SQL) piuttosto che l'escape manuale.
Le sequenze di escape essenziali includono: \n (newline/line feed), \r (carriage return), \t (tab), \" (double quote), \' (single quote), \\ (backslash), \0 (carattere nullo), \b (backspace) e \f (form feed). Per Unicode: \uXXXX (4 cifre esadecimali) e \xXX (2 cifre esadecimali). Contesti diversi richiedono escape diversi: JSON usa \/, HTML usa < e >, XML è simile a HTML e le espressioni regolari usano \d, \w, \s per le classi di caratteri.
Gli attacchi XSS iniettano script dannosi sfruttando l'input dell'utente non escape nelle pagine web. L'escape corretto converte i caratteri pericolosi in rappresentazioni sicure: < diventa <, > diventa >, & diventa &, " diventa " e ' diventa '. Questo impedisce ai browser di interpretare l'input dell'utente come codice HTML o JavaScript. Ad esempio, se un utente inserisce <script>alert('XSS')</script>, l'escape HTML lo converte in testo innocuo che viene visualizzato letteralmente invece di essere eseguito. Eseguire sempre l'escape in base al contesto: HTML per il contenuto della pagina, JavaScript per i blocchi di script, URL per i link.
