首页 新闻 会员 周边 捐助

设置 filterContext.HttpContext.Response.ContentType无用

0
悬赏园豆:10 [已解决问题] 解决于 2019-01-07 16:59
filterContext.HttpContext.Response.StatusCode = 999;
filterContext.HttpContext.Response.ContentType = "application/x-javascript";
 filterContext.Result = new ContentResult {
Content = "alert(123);",ContentType = "application/x-javascript"
}; filterContext.HttpContext.Response.End();

执行后他的Content-Type还是text/html,请问这是什么原因?要怎么解决呢?

bgh的主页 bgh | 初学一级 | 园豆:45
提问于:2018-07-30 15:45

是 asp.net core 吗?

dudu 6年前

@dudu: 不是core

bgh 6年前
< >
分享
最佳答案
0

filterContext.HttpContext.Response.End(); 之后有没有加 return

收获园豆:10
dudu | 高人七级 |园豆:29570 | 2018-07-30 16:20

没有加,但我试过加return也是text/html

bgh | 园豆:45 (初学一级) | 2018-07-30 16:22

@bgh: 建议提供这个 Filter 的更多代码

dudu | 园豆:29570 (高人七级) | 2018-07-30 16:31

@dudu: 

var controllerName = filterContext.RouteData.Values["controller"].ToString();
var actionName = filterContext.RouteData.Values["action"].ToString();
string qx = (controllerName + actionName).ToLower();
if (global.Jurisdiction.ContainsKey(qx))
{
       if (jh.IsJurisdIction(qx, Jur))
       {

        }
        else
        {
            if (isAjax)
            {
              filterContext.HttpContext.Response.StatusCode = 999;
              filterContext.Result = new ContentResult { Content = "alert();", ContentType = "application/x-javascript" };//功能权限弹出提示框
              filterContext.HttpContext.Response.End();
       }
else { filterContext.Result = new ContentResult { Content = "alert(23);", ContentType = "application/x-javascript" }; } } }
bgh | 园豆:45 (初学一级) | 2018-07-30 16:35

@bgh: 这里未发现问题,建议检查一下其他地方的代码

dudu | 园豆:29570 (高人七级) | 2018-07-30 17:26

@dudu: 嗯,行,谢谢不厌其烦为我解答

bgh | 园豆:45 (初学一级) | 2018-07-30 17:27
其他回答(1)
0

你确定你把这个拦截器给添加到方法上了吗

一叶兰舟飘 | 园豆:351 (菜鸟二级) | 2018-07-31 10:37

调试的时候已经是先执行了

支持(0) 反对(0) bgh | 园豆:45 (初学一级) | 2018-07-31 10:38
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册