Поделиться через


HttpResponse.AddOnSendingHeaders(Action<HttpContext>) Метод

Определение

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

public:
 System::Web::ISubscriptionToken ^ AddOnSendingHeaders(Action<System::Web::HttpContext ^> ^ callback);
public System.Web.ISubscriptionToken AddOnSendingHeaders (Action<System.Web.HttpContext> callback);
member this.AddOnSendingHeaders : Action<System.Web.HttpContext> -> System.Web.ISubscriptionToken
Public Function AddOnSendingHeaders (callback As Action(Of HttpContext)) As ISubscriptionToken

Параметры

callback
Action<HttpContext>

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

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

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

Комментарии

Важно!

Метод AddOnSendingHeaders не вызывается, если собственный модуль сначала сбрасывает ответ.

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

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

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

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

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

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

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