【发布时间】:2013-04-02 01:19:51
【问题描述】:
我正在使用 Json 将更新信息发送到以下控制器操作:
[HttpPost]
public JsonResult JsonUpdate(string pk, string rk, string fld, string val) {
Content content = null;
try {
if (fld == "TempRowKey") {
content = contentService.Get(pk, rk);
rk = utilityService.DotFormatToRowKey(val);
contentService.UpdateRowKey(content, rk, User.Identity.Name);
} else {
我意识到这是导致问题的 MVC 中的附加保护,但我需要能够在 val 参数中传递 HTML 代码,但我收到以下错误:
A potentially dangerous Request.Form value was detected from the client (val="...e HashMap <K,V>, LinkedHashMap...").
请注意,这是管理员输入的有效文本。此屏幕仅供管理员使用,因此我可以不用保护该字段。
看起来 MVC2、3 和 4 之间有一些变化。
我有哪些方法可以避免 MVC3 和 MVC4 出现这个问题。我在stackoverflow上看到了另一个像我一样的帖子,但它并没有真正解决问题。
请注意,我正在寻找可以应用于此操作的本地内容。我在网上看到了一些建议,但似乎在如何使用不同的 MVC 版本来处理这个问题之间存在混淆。是对数据进行编码和解码的最佳方法吗?如果是,我该怎么做?
【问题讨论】: