React · Junior · Frage 38 von 75
Was ist an dangerouslySetInnerHTML gefährlich?
- 1Es fügt HTML ohne Escaping ein - ein XSS-Risiko
- 2Es funktioniert nur in Klassenkomponenten
- 3Es verlangsamt das Rendern wegen des Parsens um ein Vielfaches
Antwort zeigen
Richtige Antwort: Es fügt HTML ohne Escaping ein - ein XSS-Risiko
Erklärung
React escaped Strings normalerweise, daher ist {userInput} sicher. dangerouslySetInnerHTML={{ __html }} fügt Markup unverändert ein, und <img onerror=...> aus Nutzerdaten führt ein Skript aus. Brauchst du wirklich HTML (z. B. aus einem CMS), bereinige es mit einem Sanitizer (DOMPurify).