jsonecho

HTML Escape

Plak je tekst en krijg hem geëscaped voor HTML, klaar om in code of gegevens te plakken.

De tool wordt geladen...

Zo gebruik je HTML Escape

  1. Plak of typ de tekst die je wilt escapen.
  2. Pas de opties aan als dat nodig is.
  3. Kopieer het geëscapete resultaat.

Over HTML Escape

HTML geeft vijf tekens een speciale betekenis: de ampersand, de twee punthaken en beide soorten aanhalingstekens. Verschijnt een van die tekens in tekst die je op een pagina wilt tonen, dan leest de browser het als markup. Een "kleiner dan"-teken in een zin kan de rest van de regel opslokken en een los aanhalingsteken kan een attribuut te vroeg beëindigen. Escapen vervangt elk daarvan door een entiteit, zoals < voor de openingshaak.

Dit is ook je eerste verdedigingslinie tegen cross-site scripting. Elke tekst die van een gebruiker komt en op een pagina belandt moet voor HTML worden geëscaped, door je sjabloonengine of met de hand.

Wat wordt geëscaped

& wordt &amp;, < wordt &lt;, > wordt &gt;, een dubbel aanhalingsteken wordt &quot; en een enkel aanhalingsteken wordt &#39;.

Veelgestelde vragen

Welke tekens dekt HTML-escaping?

De ampersand, kleiner-dan, groter-dan, dubbel aanhalingsteken en enkel aanhalingsteken. Die vijf zijn genoeg om tekst veilig te maken binnen elementinhoud en binnen aanhalingstekens in attribuutwaarden.

Is escapen genoeg om XSS te voorkomen?

Het is de juiste oplossing voor tekst in elementinhoud of in een attribuut tussen aanhalingstekens. Het dekt niet elke context. Tekst in een scriptblok, een URL of een stijl vraagt om een andere aanpak.

Waarom wordt het enkele aanhalingsteken als ' geschreven en niet als '?

' is niet gedefinieerd in HTML 4 en sommige oudere browsers negeren het. De numerieke vorm werkt overal.

Wat doet "Niet-ASCII coderen"?

Het schrijft elk teken buiten gewone ASCII als numerieke entiteit, bijvoorbeeld é wordt é. Gebruik het als je er niet op kunt vertrouwen dat de pagina of het kanaal UTF-8 doorgeeft.

Meer in Escapen en tekst

Alle tools →