ASP.NET中报“无法在已发送HTTP标头之后进行重定向”异常问题解决

竹林之风2周前技术积累32

        ASP.NET中报“无法在已发送HTTP标头之后进行重定向”异常时,其中一个原因是:在已经重定向后又重定向。在ASP.NET中实现重定向有以下几种方式:

(1)设置301、302响应标头;

(2)调用Response.Redirect;

(3)MVC控制器方法返回RedirecResult类的实例。

        因为该原因发生异常的情况,一般就是代码不规范,同一执行路径执行了多次重定向。可从如下几方面排查代码去掉重复的重定向操作:

(1)从Global.asax.cs到具体方法的调用链上下文中,是否有重复的重定向;

(2)应用了Filter的方法,是否在方法和Filter中都有重定向;

(3)使用了DelegatingHandler的情况,是否在方法和DelegatingHandler中都有重定向;

(4)使用了HttpModule的情况,是否在方法和HttpModule中都有重定向。

标签: ASP.NETMVCC#

相关文章

ASP.NET实现HTTP长轮询(三)——MVC

        本文主要描述如何在ASP.NET MVC中实现长轮询:(1)控制器继承AsyncController:using System.Thr...

ASP.NET网站自定义错误处理及其它安全相关

        ASP.NET网站在运行过程中总是有可能报错,例如404等HTTP错误、500等程序异常。在IIS托管并报错的情况下,网站的默认行为依次是:(1...

ASP.NET实现HTTP长轮询(一)——WebForm

        本文主要描述如何在ASP.NET WebForm中实现长轮询:(1)在ASP.NET WebForm的aspx文件中设置如下指令即可实现异步的A...

ASP.NET实现HTTP长轮询(四)——WebApi

        本文主要描述如何在ASP.NET WebApi中实现长轮询:(1)控制器:using System; using Syst...

ASP.NET中报“无法在已发送HTTP标头之后设置状态”异常问题解决

        ASP.NET中报“无法在已发送HTTP标头之后设置状态”异常,是因为设置Response的Status...

ASP.NET MVC WebApi控制器方法使用async假死超时问题

        在一个ASP.NET MVC WebApi控制器方法中使用async标记为异步方法后,有时会假死超时。根...

发表评论    

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。