HttpResponseBase.AddOnSendingHeaders(Action<HttpContextBase>) Метод

Определение

Регистрирует обратный вызов, который среда выполнения ASP.NET будет вызывать непосредственно перед отправкой заголовков ответа для этого запроса.

public virtual System.Web.ISubscriptionToken AddOnSendingHeaders (Action<System.Web.HttpContextBase> callback);

Параметры

callback
Action<HttpContextBase>

Метод обратного вызова.

Возвращаемое значение

Возвращает объект типа ISubscriptionToken, который представляет подписку на псевдособытие OnSendingHeaders.

Комментарии

Псевдо-событие OnSendingHeaders отличается от события конвейера уровня IHttpModule тем, что оно является подпиской на запрос, а не подпиской для каждого приложения. Цель состоит в том, что обратный вызов может изменить код состояния ответа или задать файл cookie или заголовок ответа. Другие примечания и предупреждения об использовании:

  • Этот метод эффективен только в том случае, если службы IIS выполняются в конвейере в режиме интегрированного конвейера и только в том случае, если заголовки ответа еще не были отправлены для текущего запроса.

  • Среда выполнения ASP.NET не гарантирует ничего в потоке, в который вызывается обратный вызов. Например, обратный вызов может вызываться синхронно в фоновом потоке, если выполняется фоновая очистка. Current не гарантируется доступность в таком потоке.

  • Обратный вызов не должен вызывать методы, которые управляют телом сущности ответа или приводят к сбросу. Например, обратный вызов не должен вызывать Redirect, так как этот метод может управлять телом сущности ответа.

  • Обратный вызов должен содержать только кратковременный синхронный код. Попытка вызова асинхронной операции или ожидания такой операции может привести к взаимоблокировке.

  • Обратный вызов не должен вызывать исключение; В противном случае поведение не определено.

Применяется к