【发布时间】:2015-06-30 16:54:35
【问题描述】:
由于我刚刚开始学习与网络相关的编程,请暂时暴露我的无知。所以,我有一个用 MVC 编写的 Web 项目,它有一个登录窗口,其中用户名文本框绑定到一个属性:
@Html.TextBoxFor(model => model.UserName, new {@placeholder = "Username"})
据我了解,Razor 会自动对输入进行 html 编码,以帮助防止跨脚本攻击。但是,当我使用 javascript 测试用户名时,我从 MVC 中得到一个异常:
从 客户端 (UserName="...hp?name_1=code
这让我觉得输入不是 html 编码的。我的想法是通过 html 编码/解码来解决这个问题,但看起来我并没有完全理解这个想法。谁能解释一下?
注意: SO 的related posts 之一提供了不安全的解决方案,但我不能简单地允许 html。
【问题讨论】:
标签: html asp.net-mvc-4 razor model-view-controller html-encode