HttpResponseBase.AddOnSendingHeaders(Action<HttpContextBase>) 方法

定义

注册一个回调,在即将为此请求发送响应标头之前,ASP.NET 运行时将会调用此回调。

public:
 virtual System::Web::ISubscriptionToken ^ AddOnSendingHeaders(Action<System::Web::HttpContextBase ^> ^ callback);
public virtual System.Web.ISubscriptionToken AddOnSendingHeaders (Action<System.Web.HttpContextBase> callback);
abstract member AddOnSendingHeaders : Action<System.Web.HttpContextBase> -> System.Web.ISubscriptionToken
override this.AddOnSendingHeaders : Action<System.Web.HttpContextBase> -> System.Web.ISubscriptionToken
Public Overridable Function AddOnSendingHeaders (callback As Action(Of HttpContextBase)) As ISubscriptionToken

参数

callback
Action<HttpContextBase>

回调方法。

返回

返回一个 ISubscriptionToken 对象,它表示对 OnSendingHeaders 伪事件的订阅。

注解

伪事件 OnSendingHeaders 与 IHttpModule 级别管道事件的不同之处在于,它是按请求订阅而不是按应用程序订阅。 目的是使回调可以修改响应状态代码,也可以设置响应 Cookie 或标头。 其他使用说明和注意事项:

  • 仅当 IIS 在集成管道模式管道中运行时,并且仅当尚未为当前请求发送响应标头时,此方法才有效。

  • ASP.NET 运行时不保证调用回调的线程的任何内容。 例如,如果正在执行后台刷新,可以在后台线程中同步调用回调。 Current 不保证在此类线程中可用。

  • 回调不得调用任何操作响应实体正文或导致刷新的方法。 例如,回调不得调用 Redirect,因为该方法可能会操作响应实体正文。

  • 回调必须仅包含短时间运行的同步代码。 尝试调用异步操作或等待此类操作可能会导致死锁。

  • 回调不得引发异常;否则,行为未定义。

适用于