我正在使用ReactJS開發一個簡單的聊天應用程序。有人可以幫我清理輸入。 只有一個輸入文本框發送聊天消息。如何消毒?ReactJS輸入消毒
<input type="text"
className="chat"
value={this.state.name}
/>
基於文檔HTML默認轉義html。夠了嗎?我是否需要添加其他消毒方法?如果是,請讓我知道該怎麼做?
我正在使用ReactJS開發一個簡單的聊天應用程序。有人可以幫我清理輸入。 只有一個輸入文本框發送聊天消息。如何消毒?ReactJS輸入消毒
<input type="text"
className="chat"
value={this.state.name}
/>
基於文檔HTML默認轉義html。夠了嗎?我是否需要添加其他消毒方法?如果是,請讓我知道該怎麼做?
默認情況下已經過消毒,您不需要消毒方法,除非您使用的不是dangerouslySetInnerHTML。
有沒有關於這方面的任何文件? –
https://facebook.github.io/react/docs/introducing-jsx.html#jsx-prevents-injection-attacks 「默認情況下,React DOM在渲染它們之前轉義嵌入在JSX中的任何值,因此它可以確保您不能注入任何未明確寫入應用程序的東西,在呈現之前,所有內容都會轉換爲字符串,這有助於防止XSS(跨站點腳本)攻擊。「 – dgrijuela
'value = {sanitize(this.state.name)}'? –
@NguyenThanh我可以給value = {sanitize(this.state.name)},我正在清理未定義的錯誤。我們真的需要消毒嗎? ReactJS會自動爲我們做到這一點。 –