ASP.NET MVC 从客户端中检测到有潜在危险的 Request.Form 值

错误信息

使用ASP.NET MVC在页面上提交包含特殊字符的数据(比如富文本内容)的时候,会提示:

从客户端中检测到有潜在危险的 Request.Form 值

原因分析

提交到服务器的表单数据中包含有特殊字符,系统对表单校验时认为这部分数据具有危险性,所以报错。

解决方案

方案一

对于采用 Model 绑定进行数据提交的,只需要在提交的 Action 上设置 ValidateInput 特性为 false。

C#
[HttpPost] [ValidateInput(false)] public ActionResult SaveData(Post post) { //处理富文本数据 }

方案二

后台使用 Request[] 或 Request.Form[] 等获取数据的,将 Request 换成 Request.Unvalidated。

C#
[HttpPost] public ActionResult SaveData() { //获取传过来的富文本 var html = Request.Unvalidated["html"]; }
【END】

本文链接:

版权声明:本博客所有文章除声明转载外,均采用 BY-NC-SA 3.0 许可协议。转载请注明来自 iBlog

阅读 71 | 发布于 2015-04-09
暂无评论