在ASP.NET MVC的Action中直接接受客户端发送过来的HTML内容片段

Posted 陈希章@中国

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在ASP.NET MVC的Action中直接接受客户端发送过来的HTML内容片段相关的知识,希望对你有一定的参考价值。

出于安全的考虑,默认情况下,如果从客户端发送过来的数据中直接包括了html内容,ASP.NET会自动启动保护措施,你会收到下面的错误提示

image

这当然是一个不错的设计,只不过在某些特殊的事情,如果我们确实需要接受客户端发送过来的HTML,那么就需要做出一些必要的修改了

 

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc;

namespace EMREditor.Controllers
{
    public class HomeController : Controller
    {
        // GET: Home
        //public ActionResult Index()
        //{
        //    return View();
        //}

        [HttpPost]
        [ValidateInput(false)]
        public ActionResult Index()
        {
            var req = Request.Form;
            return Content(req["content"]);
        }
    }
}

 

然后,在web.config中还需要配置

<system.web>
  <compilation debug="true" targetFramework="4.5.2"/>
  <httpRuntime targetFramework="4.5.2" requestValidationMode="2.0"/>
</system.web>

以上是关于在ASP.NET MVC的Action中直接接受客户端发送过来的HTML内容片段的主要内容,如果未能解决你的问题,请参考以下文章

asp.net mvc5 action多个参数

asp.net mvc中html.Action问题

asp.net mvc 设置一个action的访问人数,达到上线排队

asp.net mvc 在View中获取Url参数的值

asp.net mvc 中的部分视图

ASP.NET MVC Action向视图传值之匿名类型