從文檔中,我相信Html(value)
足以逃脫HTML和Javascript。但是,這段代碼讓HTML標籤無需轉義即可通過。充分轉義HTML和Javascript
<ul>
@*here is the loop*@
@nodes.map{ n =>
<li> @Html(n) </li> }
</ul>
請給將充分渲染視圖前逃離 HTML和Javascript(和所有其他危險的事情)的代碼。
從文檔中,我相信Html(value)
足以逃脫HTML和Javascript。但是,這段代碼讓HTML標籤無需轉義即可通過。充分轉義HTML和Javascript
<ul>
@*here is the loop*@
@nodes.map{ n =>
<li> @Html(n) </li> }
</ul>
請給將充分渲染視圖前逃離 HTML和Javascript(和所有其他危險的事情)的代碼。
我認爲情況正好相反。 Html
函數輸出原始字符串而不用轉義它。默認情況下,Play會跳出插入到模板中的動態內容。請參閱section on Escaping in the documentation。
那麼它會逃避JS但不是HTML?如何逃避HTML? – aitchnyu
我不明白這個問題。那是什麼'? Html函數或播放模板庫?你不必做任何事情來轉義html(包括
https://www.owasp.org/index.php/XSS_(Cross_Site_Scripting).p_vention_Cheat_Sheet – Quentin