String Escape/Unescape
Pomocí tohoto všestranného nástroje pro escapování řetězců můžete v řetězcích JSON, HTML, XML, URL a dalších formátech escapovat nebo zrušit escapování speciálních znaků. Převádějte speciální znaky na jejich kódované ekvivalenty nebo je zpětně dekódujte, čímž zajistíte integritu dat v různých kontextech. Ideální pro webové vývojáře, integraci API a úlohy zpracování dat.
Často kladené otázky
Nástroj podporuje více escapovacích formátů včetně JSON (uvozovky, nové řádky, tabulátory), entit HTML, entit XML, kódování URL a escapování řetězců v JavaScriptu, což umožňuje připravit řetězce pro různé kontexty.
Escape řetězce pro JSON, pokud potřebujete do hodnot JSON zahrnout speciální znaky, jako jsou uvozovky, zpětná lomítka nebo nové řádky, čímž zajistíte platnou syntaxi JSON a zabráníte chybám při zpracování.
Ano, nástroj funguje obousměrně. Můžete rozbalit kódované řetězce a zobrazit původní text, což je užitečné pro ladění a pochopení escapovaných dat z rozhraní API nebo databází.
Escapování HTML převádí znaky jako <, >, & a uvozovky na entity HTML (<, >, &, "), aby se zabránilo útokům XSS a problémům se zobrazením, zatímco escapování JSON zpracovává znaky, které porušují syntaxi JSON.
Kódování URL (procentní kódování) je specifický typ escapování, který převádí speciální znaky do formátu %XX pro bezpečné použití v adresách URL, což se liší od escapování JSON nebo HTML.
Správné escapování řetězců zabraňuje útokům typu injection (XSS, SQL injection) tím, že zajišťuje, aby se s uživatelským vstupem zacházelo jako s daty, a nikoli jako se spustitelným kódem, což z něj činí kritický bezpečnostní postup při vývoji webových stránek.
Escapování JSON se řídí přísným standardem (RFC 8259), který vyžaduje escapování zpětných lomítek pro uvozovky (\"), zpětná lomítka (\\) a řídicí znaky (\n, \t, \r). Escapování řetězců v JavaScriptu je podobné, ale povolenější a umožňuje další escapování, například \v (svislý tabulátor), \0 (null) a \x (hexadecimální escapování). JSON také vyžaduje náhradní páry UTF-16 pro znaky mimo BMP, zatímco JavaScript může používat zápis \u{XXXXXX}. Pro odpovědi rozhraní API a výměnu dat vždy používejte escapování JSON, aby byla zajištěna přísná kompatibilita.
Každý jazyk má specifické požadavky na únik: Python používá zpětná lomítka (\n, \t, \') a podporuje surové řetězce (r'text'), JavaScript používá podobné escapování a navíc šablonové literály, C/C++ vyžaduje escapování uvozovek a zpětných lomítek, SQL vyžaduje zdvojení jednoduchých uvozovek ('') nebo jejich escapování a shellové skripty potřebují pečlivé escapování $, ` a uvozovek. Abyste se vyhnuli zranitelnostem, vždy používejte raději vestavěné escapovací funkce jazyka (například json.dumps() jazyka Python, JSON.stringify() jazyka JavaScript nebo parametrizované dotazy jazyka SQL) než ruční escapování.
Mezi základní únikové sekvence patří: \n (nový řádek/řádkový posuv), \r (návrat vozíku), \t (tabulátor), \" (dvojitá uvozovka), \' (jednoduchá uvozovka), \\ (zpětné lomítko), \0 (nulový znak), \b (backspace) a \f (form feed). Pro Unicode: \uXXXX (čtyřmístný hexadecimální znak) a \xXX (dvoumístný hexadecimální znak). Různé kontexty vyžadují různé escapování - JSON používá \/, HTML používá < a >, XML je podobné HTML a regulární výrazy používají \d, \w, \s pro třídy znaků.
Útoky XSS zavádějí škodlivé skripty zneužitím nezadaného uživatelského vstupu na webových stránkách. Správné escapování převádí nebezpečné znaky na bezpečné reprezentace: < se změní na <, > na >, & na &, " na " a ' na '. Tím se zabrání tomu, aby prohlížeče interpretovaly uživatelský vstup jako kód HTML nebo JavaScript. Pokud například uživatel zadá <script>alert('XSS')</script>, escapování HTML jej převede na neškodný text, který se zobrazí doslova, místo aby se spustil. Výstup vždy escapujte na základě kontextu - HTML pro obsah stránky, JavaScript pro bloky skriptů, URL pro odkazy.
