Процесс очистки строки его html-тегов или другого вредоносного кода javascript называется санитаризацией.
Один из способов заключается в использовании
protectjSetInnerHTML
.
dangerouslySetInnerHTML является заменой React для использования innerHTML в DOM браузера.В общем, настройка HTML из кода рискованна, потому что легко непреднамеренно подвергнуть ваших пользователей атаке межсайтового скриптинга (XSS).Таким образом, вы можете установить HTML непосредственно из React, но вы должны ввести опасно SetInnerHTML и передать объект с ключом __html, чтобы напомнить себе, что это опасно.Например:
function createMarkup() {
return {__html: 'First · Second'};
}
function MyComponent() {
return <div dangerouslySetInnerHTML={createMarkup()} />;
}
Но я рекомендую использовать библиотеки, такие как DomPurify или SanitizeHtmlReact
, потому что они более гибкие и имеютмного опций.
Проверьте их примеры и демонстрации для получения дополнительной информации