Przejdź do treści
Toova
Wszystkie narzędzia

Koder i dekoder encji HTML

Prywatne z założenia — działa w całości w Państwa przeglądarce

Koduj znaki specjalne jako encje HTML lub dekoduj encje z powrotem do zwykłego tekstu. Toova pokrywa pełny zestaw encji nazwanych, wspiera referencje liczbowe i szesnastkowe i działa całkowicie w przeglądarce — przydatne do sanityzacji tekstu, debugowania szablonów i bezpiecznego eksportu treści.

Encje nazwane, liczbowe i szesnastkowe

HTML ma trzy sposoby wyrażenia tego samego znaku: nazwany (&), dziesiętny liczbowy (&) i szesnastkowy (&). Toova domyślnie koduje do encji nazwanych, ponieważ są czytelniejsze, ale można przełączyć się na tryb liczbowy lub szesnastkowy, jeśli system docelowy tego wymaga. Dekodowanie obsługuje wszystkie trzy formy transparentnie — wklej cokolwiek i odzyskaj zwykły tekst.

Selektywne kodowanie

Kodowanie każdego znaku rozdyma HTML i szkodzi czytelności. Domyślnie Toova koduje tylko znaki mające specjalne znaczenie w HTML — nawiasy kątowe, ampersand i cudzysłowy. Można przełączyć się na tryb agresywny, aby zakodować każdy znak spoza ASCII, co przydaje się przy emitowaniu treści do ścisłego środowiska ASCII lub przy budowaniu statycznego e-maila HTML.

Tylko lokalnie

Wszystko odbywa się w przeglądarce. Wklejony tekst nigdy nie jest wysyłany na żaden serwer i nie ma logowania treści. To właściwy model, gdy tekst zawiera kopię wprowadzaną przez użytkownika, opinie klientów lub cokolwiek co powinno pozostać prywatne. Zakładka Network w DevTools pokaże zero żądań wychodzących podczas kodowania.

Najczęściej zadawane pytania

Jaka jest różnica między encjami nazwanymi a liczbowymi?
Encje nazwane (&) są łatwiejsze do odczytu, ale działają tylko gdy parser rozpoznaje nazwę. Encje liczbowe (&) i szesnastkowe (&) działają w każdym parserze HTML lub XML, co czyni je bezpieczniejszymi w kontekstach poza przeglądarką jak RSS czy e-mail.
Czy powinienem kodować każdy znak?
Nie. Kodowanie tylko tego co konieczne (nawiasy kątowe, ampersand, cudzysłowy) utrzymuje wynik czytelnym i małym. Agresywne kodowanie każdego bajtu spoza ASCII przydaje się tylko gdy celem jest ścisłe ASCII.
Czy obsłuży emoji i alfabety inne niż łacińskie?
Tak. Emoji, litery z akcentami i znaki CJK wszystkie kodują się prawidłowo na formę liczbową lub szesnastkową. Dekodowanie przywraca je dokładnie, włącznie z sekwencjami wielopunktowymi jak emoji flag.
Czy kodowanie chroni przed XSS?
Kodowanie wejścia użytkownika przed wstrzyknięciem do HTML to właściwy punkt wyjścia, ale nie cała historia. Zawsze łącz to z porządnym silnikiem szablonów escapującym domyślnie i polityką Content Security Policy na stronie.
Czy wklejony tekst jest wysyłany gdziekolwiek?
Nie. Kodowanie i dekodowanie działa całkowicie w przeglądarce. Nic nie jest przesyłane ani logowane.