Wie kann man die HTML -Injektion beim Verwenden von Template -Literalen stoppen?HTML

HTML-Programmierer
Anonymous
 Wie kann man die HTML -Injektion beim Verwenden von Template -Literalen stoppen?

Post by Anonymous »

Ich habe eine einfache CRUD -Webapp, die auf der Basis von Literalen der Benutzereingabe auf der Basis von Literalen der Vorlage basiert. Das Problem ist, dass der Benutzer auf der Seite so etwas wie Hey < /b> < /code> eingibt: < /p>

Code: Select all

const userInput = prompt("Enter your name", "foo[/b]");

document.body.innerHTML = `

[list]
[*]${userInput}
[/list]

`;< /code>
< /div>
< /div>
< /p>
Wie kann ich diese Interaktion verhindern?  Gibt es eine Best Practice, um die Ausdrücke als Text anstelle von HTML einzufügen?  Ich verstehe, dass dies ein Produkt von Innerhtml 
ist, aber ist das nicht unvermeidlich bei der Verwendung von Vorlagenliteralen?

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post