escapeHtml()
HTML-Sonderzeichen in einem String maskieren.
import { escapeHtml } from "@unifast/core";Signatur
function escapeHtml(str: string): stringParameter
str
| Eigenschaft | Typ | Standard | Beschreibung |
|---|---|---|---|
str | string | — | Der zu maskierende String mit Zeichen, die escaped werden sollen |
Rückgabewert
string – Der Eingabestring, bei dem &, <, > und " durch ihre HTML-Entity-Entsprechungen ersetzt wurden.
Verwendung
import { escapeHtml } from "@unifast/core";
const safe = escapeHtml('<script>alert("xss")</script>');
console.log(safe);
// <script>alert("xss")</script>Beispiele
Einfache Maskierung
import { escapeHtml } from "@unifast/core";
console.log(escapeHtml("Tom & Jerry"));
// Tom & Jerry
console.log(escapeHtml('class="main"'));
// class="main"
console.log(escapeHtml("1 < 2 > 0"));
// 1 < 2 > 0Maskierung benutzergenerierter Inhalte
import { escapeHtml } from "@unifast/core";
const userComment = '<img src=x onerror="alert(1)">';
const html = `<div class="comment"></div>`;
console.log(html);
// <div class="comment"><img src=x onerror="alert(1)"></div>Sichere HTML-Attribute erstellen
import { escapeHtml } from "@unifast/core";
const title = 'He said "hello" & waved';
const html = `<span title="">Hover me</span>`;
console.log(html);
// <span title="He said "hello" & waved">Hover me</span>Verhalten
&wird durch&ersetzt<wird durch<ersetzt>wird durch>ersetzt"wird durch"ersetztAlle anderen Zeichen bleiben unverändert