ahm*_*iee 1 html c# asp.net unicode asp.net-mvc
如果生成HTML字符串Like
ViewBag.FinalHTML="<a href=\"http://stackoverflow.com\">StackOverFlow</a>";
Run Code Online (Sandbox Code Playgroud)
然后尝试使用以下代码在View中显示它:
This is the best Q&A for programming questions: @ViewBag.FinalHTML
Run Code Online (Sandbox Code Playgroud)
然后结果将是这样的:
This is the best Q&A for programming questions: <a href="http://stackoverflow.com">StackOverFlow</a>
Run Code Online (Sandbox Code Playgroud)
(我知道我怎么能这样做.我有另一个问题!)
ASP.Net MVC是如何做到的?
该@函数使用该HttpUtility.HtmlEncode方法安全地编码传递给它的所有内容.
如果您不希望发生此自动编码,请使用以下@Html.Raw方法:
@Html.Raw(ViewBag.FinalHTML)
Run Code Online (Sandbox Code Playgroud)
显然,通过这样做,你应该确保这FinalHTML绝对不是来自用户输入,而是由你在服务器上生成的.否则,您将在您的网站上打开一个巨大的XSS漏洞.
| 归档时间: |
|
| 查看次数: |
628 次 |
| 最近记录: |