> 웹 프론트엔드 > JS 튜토리얼 > ReactJS에서 HTML 문자열을 JSX로 안전하게 렌더링하려면 어떻게 해야 합니까?

ReactJS에서 HTML 문자열을 JSX로 안전하게 렌더링하려면 어떻게 해야 합니까?

DDD
풀어 주다: 2024-11-28 15:03:15
원래의
853명이 탐색했습니다.

How Can I Safely Render HTML Strings as JSX in ReactJS?

HTML 문자열을 ReactJS JSX로 변환

ReactJS에서 AJAX 요청에서 검색된 HTML 데이터를 표시하는 것은 일반적으로 데이터를 렌더링하므로 문제가 될 수 있습니다. 텍스트로. 이 문제를 극복하고 HTML 콘텐츠를 표시하기 위해 ReactJS는 솔루션을 제공합니다.

해결책: 위험하게SetInnerHTML

ReactJS에는 HTML을 있는 그대로 렌더링할 수 있는 위험하게SetInnerHTML이라는 특수 속성이 포함되어 있습니다. . 그러나 이 속성은 React에 내장된 XSS(교차 사이트 스크립팅) 보호를 우회하므로 주의해서 사용됩니다.

dangerlySetInnerHTML을 사용하려면 HTML 데이터를 다음 값으로 전달하세요.

<td dangerouslySetInnerHTML={{__html: this.state.actions}} />
로그인 후 복사

사용자 정의

렌더링된 HTML을 어떤 방식으로든 수정하려면, React-html-parser 또는 React-dom-parser와 같은 구성 요소를 사용할 수 있습니다. 이러한 구성 요소를 사용하면 HTML 데이터를 ReactJS 앱에 표시하기 전에 구문 분석하고 수정할 수 있습니다.

보안 고려 사항

dangerlySetInnerHTML은 절대적으로 필요한 경우에만 사용해야 한다는 점에 유의하는 것이 중요합니다. 필요한. 부적절하게 사용하면 XSS 취약점이 발생할 수 있습니다. 악성 코드로부터 보호하려면 HTML 데이터를 렌더링하기 전에 삭제하고 유효성을 검사하십시오.

위 내용은 ReactJS에서 HTML 문자열을 JSX로 안전하게 렌더링하려면 어떻게 해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿