番茄的梦想

那一抹夕阳

  博客园  :: 首页  ::  :: 联系 :: 订阅 订阅  :: 管理

看到日志里有 服务器无法在已发送 HTTP 标头之后设置状态

网上的很多方法都是下面的处理,其实没找到问题的根源

Response.Clear();
Response.BufferOutput = true;

 

这个问题一般都是在用户认证里进行跳转时出现

由于我们的过滤器来判断用户是否登录,没登录跳到登录页。但在redirect后,控制器里的action代码还要运行,包括 return view()

 

因为redirect要设置httpstatus,向客户端发送输出,action里还要设置httpstatus进行输出,所以报错

 

假若不让action里的代码运行就不会报这个错误了,不让运行的办法是

filterContext.Result = new EmptyResult();

 

请解决了这个问题的朋友给我点赞。

posted on 2020-05-05 11:30  番茄的梦想  阅读(1577)  评论(0编辑  收藏  举报