2017-04-24 28 views
2

ReactJS를 사용하여 간단한 채팅 응용 프로그램을 개발합니다. 누군가가 입력을 위생적으로 처리하도록 도울 수 있습니까? 채팅 메시지를 보낼 입력 텍스트 상자는 하나뿐입니다. 어떻게 위생 처리합니까?ReactJS의 입력 삭제

<input type="text" 
       className="chat" 
       value={this.state.name} 
      /> 

기본적으로 HTML 문서는 HTML을 이스케이프 처리합니다. 충분한가?. 다른 위생 처리 방법을 추가해야합니까? 그렇다면 그 방법을 알려주십시오.

+0

'value = {sanitize (this.state.name)}'? –

+0

@NguyenThanh 그냥 값 = {sanitize (this.state.name)}을 제공 할 수 있습니다. 정의되지 않은 오류가 발생했습니다. 우리가 정말로 위생 처리해야합니까? ReactJS가 자동으로 그렇게할까요? –

답변

4

기본적으로 위생 처리되어 있으므로 dangerouslySetInnerHTML을 사용하지 않는 한 위생 처리 방법이 필요하지 않습니다.

+1

이에 대한 문서가 있습니까? –

+1

https://facebook.github.io/react/docs/introducing-jsx.html#jsx-prevents-injection-attacks "기본적으로 React DOM은 렌더링하기 전에 JSX에 포함 된 모든 값을 이스케이프 처리하므로 사용자가 응용 프로그램에 명시 적으로 작성되지 않은 내용은 절대 삽입 할 수 없습니다. 모든 내용이 렌더링되기 전에 문자열로 변환되므로 XSS (교차 사이트 스크립팅) 공격을 방지하는 데 도움이됩니다. " – dgrijuela