解决ASP.NET MVC 检测到有潜在危险的 Request.Form 值

提交使用html编辑器编辑后的数据,由于Request时出现有HTML或Javascript等字符串时,系统会认为是危险性值。立马报错。

解决方法如下:

1.修改Web.config Pages节点,更改为以下配置

 

<pages validateRequest="false" >  
    <namespaces>  
      <add namespace="System.Web.Mvc" />  
      <add namespace="System.Web.Mvc.Ajax" />  
      <add namespace="System.Web.Mvc.Html" />  
      <add namespace="System.Web.Routing" />  
    </namespaces>  
  </pages>  
  <globalization requestEncoding="gb2312" responseEncoding="gb2312" />  
  <httpRuntime requestValidationMode="2.0"/>
 

添加  httpRuntime元素。

2.在Action 添加[ValidateInput(false)]属性

 

//  
     // POST: /Blog/Create  
  
     [HttpPost]  
     [ValidateInput(false)]  
     public ActionResult Create(Blog blog)  
     {  
         try  
         {  
             // TODO: Add insert logic here  
             if (ModelState.IsValid)  
             {  
                 blogContainer.AddToBlogs(blog);  
                 blogContainer.SaveChanges();  
             }  
  
             return RedirectToAction("Index");  
         }  
         catch  
         {  
             return View();  
         }  
     }  

猜你喜欢

转载自blog.csdn.net/hb0746/article/details/40408285
今日推荐