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.

html
<div id="myDiv"></div>
js
const escapeHTMLPolicy = trustedTypes.createPolicy("myEscapePolicy", {
  createHTML: (string) => string.replace(/</g, "&lt;"),
});

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

Browser-Kompatibilität

Siehe auch