TrustedHTML
Limited availability
This feature is not Baseline because it does not work in some of the most widely-used browsers.
Hinweis: Diese Funktion ist in Web Workers verfügbar.
Die TrustedHTML
-Schnittstelle der Trusted Types-API repräsentiert einen String, den ein Entwickler in eine Injection-Senke einfügen kann, um ihn als HTML darzustellen. Diese Objekte werden über TrustedTypePolicy.createHTML()
erstellt und haben daher keinen Konstruktor.
Der Wert eines TrustedHTML
-Objekts wird festgelegt, wenn das Objekt erstellt wird, und kann nicht durch JavaScript geändert werden, da kein Setter verfügbar ist.
Instanzmethoden
TrustedHTML.toJSON()
-
Gibt eine JSON-Darstellung der gespeicherten Daten zurück.
TrustedHTML.toString()
-
Ein String, der das bereinigte HTML enthält.
Beispiele
Im folgenden Beispiel erstellen wir eine Richtlinie, die TrustedHTML
-Objekte mithilfe von TrustedTypePolicyFactory.createPolicy()
erstellt. Wir können dann TrustedTypePolicy.createHTML()
verwenden, um einen bereinigten HTML-String zu erstellen, der in das Dokument eingefügt werden kann.
Der bereinigte Wert kann dann mit Element.innerHTML
verwendet werden, um sicherzustellen, dass keine neuen HTML-Elemente eingefügt werden können.
<div id="myDiv"></div>
const escapeHTMLPolicy = trustedTypes.createPolicy("myEscapePolicy", {
createHTML: (string) => string.replace(/</g, "<"),
});
let el = document.getElementById("myDiv");
const escaped = escapeHTMLPolicy.createHTML("<img src=x onerror=alert(1)>");
console.log(escaped instanceof TrustedHTML); // true
el.innerHTML = escaped;
Spezifikationen
Specification |
---|
Trusted Types # trusted-html |