Was ist HTML-Entitäten-Encoder/Decoder?
Ein HTML-Entity-Encoder/Decoder konvertiert Sonderzeichen wie <, >, & und Anführungszeichen in ihre HTML-Entity-Äquivalente (und zurück). Dies verhindert XSS-Schwachstellen beim Einbetten von Benutzerinhalten in HTML und behebt Darstellungsprobleme mit Sonderzeichen.
Der Encoder wandelt Zeichen wie <, >, &, ", ' und jeden Unicode-Codepunkt in benannte Entitäten (&, <), dezimale Referenzen (&) oder hexadezimale Referenzen (&) um. Ein Bereichsschalter ermöglicht die Kodierung nur der fünf reservierten Zeichen, aller Sonderzeichen oder jedes Nicht-ASCII-Zeichens. Das Dekodieren kehrt jedes der drei Formate um. Praktisch zum Bereinigen von Benutzereingaben für HTML-Ausgaben oder zum Wiederherstellen von Text aus HTML-E-Mail-Exporten.
Anleitung
- Schritt 1 — Fügen Sie Text mit Sonderzeichen oder HTML-Entities ein.
- Schritt 2 — Wählen Sie "Kodieren", um Zeichen in Entities umzuwandeln, oder "Dekodieren", um Entities zurück in Zeichen zu konvertieren.
- Schritt 3 — Wähle ein Format (Benannt, Dezimal oder Hex) und einen Bereich, um zu steuern, wie stark kodiert wird.
Wann verwenden
- Code-Beispiele in ein CMS einfügen, ohne dass < und > als Tags verschluckt werden.
- Text aus HTML-Mails oder Scraping aufräumen, in dem noch — und stehen.
- Benutzereingaben vor dem Einfügen ins Server-Template escapen, um XSS zu blockieren.
Ergebnis
Sie müssen den Code-Ausschnitt <div class="hero"> innerhalb eines HTML-Absatzes anzeigen. Kodieren Sie ihn zu <div class="hero">, damit der Gerät den Text darstellt, anstatt ihn als Markup zu interpretieren.
Häufige Fragen
- Was unterscheidet benannte von numerischen HTML-Entitäten?
- Benannte sind lesbare Kürzel (© für ©). Numerische nutzen den Unicode-Codepoint (© oder ©). Numerisch funktioniert für jedes Unicode-Zeichen; benannte sind auf rund 250 in HTML5 definierte Zeichen begrenzt.
- Muss man jedes Sonderzeichen codieren oder nur bestimmte?
- Im HTML-Textkörper musst du nur & < > und das in Attributwerten verwendete Anführungszeichen kodieren. In JavaScript- oder URL-Kontexten gelten andere Regeln. Der Bereichsschalter bietet: Nur reservierte für die fünf XSS-kritischen Zeichen, Alle Sonderzeichen für Typografie plus reservierte oder Alle Nicht-ASCII für die umfassendste Abdeckung.
- Bricht das Codieren Copy-Paste oder Screenreader?
- Nein. Der Browser decodiert Entitäten vor dem Rendern, der Nutzer sieht und kopiert das ursprüngliche Zeichen. Screenreader bekommen ebenfalls die decodierte Form. Entitäten sind ein Transportformat für das Markup, kein Ausgabeformat.
- Reicht HTML-Entity-Codierung allein gegen XSS?
- Für Text im HTML-Body ja. In Attributen muss man den Wert in Anführungszeichen setzen und das verwendete Anführungszeichen mitcodieren. JavaScript, CSS und URLs haben eigene Escape-Regeln. Codierung ist die erste Schicht, nicht die ganze Abwehr.
- Warum beginnen manche Entitäten mit &#x und andere nur mit &#?
- &#x leitet einen hexadezimalen Codepoint ein, &# einen dezimalen. Beide zeigen auf dasselbe Zeichen: © und © ergeben ©. Hex passt zur U+-Schreibweise aus Unicode-Tabellen und ist bei hohen Codes kürzer.
Ähnliche Tools
Reimfinder
Finde perfekte Reime und Halbreime für jedes Wort
Anagramm-Löser
Finde alle gültigen Anagramme eines beliebigen Wortes
Unicode-Suche
Unicode-Zeichen nach Name oder Code suchen
URL-Encoder/Decoder
URLs sofort kodieren und dekodieren
NATO-Buchstabiertafel
Text in das NATO-Buchstabieralphabet umwandeln
Absatzzähler
Absätze im Text zählen