MVC5网页错误(500)

时间:2016-01-01 06:41:23

标签: jquery asp.net-mvc-4

大家好我正在实施一个下载电子邮件并将其保存到数据库的程序。我将内容绑定到webgrid并在行上单击我打开一个视图来显示邮件内容。一切都运行正常,但当我有html标签的内容时,我得到网页错误,因为附加可以帮助我。这是我在控制器中的代码

public JsonResult GetMessageDetails(string bodyContent)
    {
        ViewBag.bodyContent = bodyContent;
        return Json(bodyContent, JsonRequestBehavior.AllowGet);
    }

enter image description here

1 个答案:

答案 0 :(得分:3)

这是MVC中的一项安全功能,可以防止Cross site scripting攻击。

跨网站脚本如何运作?

想象一下,您正在阅读一些html输入并在页面中呈现它而不像

那样编码
@Html.Raw(Model.SomePropertyWhichHasHtmlContent)

现在,如果我发布了这个

,而不是发布答案

"<script>alert('Bazinga!'); window.location.href='http://www.mywebsite.com';</script>"

当您尝试使用Html.Raw()方法在页面中呈现此html内容时,用户将在看到警报后重定向到www.mywebsite.com。

现在,在您的情况下,如果您信任此方法的输入,知道如何在重新显示页面时始终对内容进行编码,并希望覆盖此行为,则可以使用{{1}修饰您的操作方法值为ValidateInput

的属性
false
相关问题