首页 新闻 会员 周边

无法在发送 HTTP 标头之后进行重定向

0
悬赏园豆:5 [已解决问题] 解决于 2009-08-26 11:37

我就在母版页最上面加了

<%
    if (Request.IsLocal)
    {
        Response.Redirect("~/error.htm", true);
    }
%>

结果他就提示:

无法在发送 HTTP 标头之后进行重定向。

说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。

异常详细信息: System.Web.HttpException: 无法在发送 HTTP 标头之后进行重定向。

怎么办呢?

问题补充: 突然发现在页面的Page_Load里有 Response.Flush();晕…… 已经给提前发送了……汗~
爱伦狼的主页 爱伦狼 | 菜鸟二级 | 园豆:227
提问于:2009-08-26 04:20
< >
分享
最佳答案
1

我试了一下,好像没什么问题。

收获园豆:3
Mr雨 | 小虾三级 |园豆:1199 | 2009-08-26 10:47
谢谢!一般确实没什么问题。不过在Response.Redirect()之前有语句已经发送标头就不行了。
爱伦狼 | 园豆:227 (菜鸟二级) | 2009-08-26 11:37
其他回答(3)
0

重新定向就是向浏览器发送HTTP标头的,标头好像是302.

if (Request.IsLocal)
    {

  //这里加上清楚标头试试
        Response.Redirect("~/error.htm", true);
    }

收获园豆:2
Birdshover | 园豆:352 (菜鸟二级) | 2009-08-26 06:32
恩,帮我稍稍明白了一下标头,呵呵
支持(0) 反对(0) 爱伦狼 | 园豆:227 (菜鸟二级) | 2009-08-26 11:37
0

谢谢!一般确实没什么问题。不过在Response.Redirect()之前有语句已经发送标头就不行了。你是怎么解决的Response.Redirect()之前有发送标头的问题?

MickyGirl | 园豆:205 (菜鸟二级) | 2010-10-08 14:53
0

我也遭遇了这个问题,并写了一篇博客:Response.Redirect引起的“无法在发送HTTP标头之后进行重定向”

dudu | 园豆:30994 (高人七级) | 2014-03-12 15:05
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册