다음을 통해 공유


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 의사 이벤트에 구독을 나타내는 ISubscriptionToken 개체입니다.

설명

중요

네이티브 모듈이 응답을 먼저 플러시하는 경우 AddOnSendingHeaders 메서드가 호출되지 않습니다.

의사 이벤트 OnSendingHeaders는 애플리케이션별 구독이 아닌 요청별 구독이라는 점에서 IHttpModule 수준 파이프라인 이벤트와 다릅니다. 콜백이 응답 상태 코드를 수정하거나 응답 쿠키 또는 헤더를 설정할 수 있습니다. 기타 사용 현황 참고 사항 및 주의 사항:

  • 이 메서드는 IIS가 통합 파이프라인 모드 파이프라인에서 실행되는 경우에만 유효하며 응답 헤더가 현재 요청에 대해 아직 전송되지 않은 경우에만 적용됩니다.

  • ASP.NET 런타임은 콜백이 호출되는 스레드에 대해 아무 것도 보장하지 않습니다. 예를 들어 백그라운드 플러시를 수행하는 경우 백그라운드 스레드에서 콜백을 동기적으로 호출할 수 있습니다. Current 는 이러한 스레드에서 사용할 수 있도록 보장되지 않습니다.

  • 콜백은 응답 엔터티 본문을 조작하거나 플러시를 발생시키는 메서드를 호출해서는 안됩니다. 예를 들어 해당 메서드가 응답 엔터티 본문을 조작할 수 있으므로 콜백을 호출 Redirect하면 안됩니다.

  • 콜백에는 짧은 실행 동기 코드만 포함되어야 합니다. 비동기 작업을 호출하거나 이러한 작업을 대기하려고 하면 교착 상태가 발생할 수 있습니다.

  • 콜백은 예외를 throw해서는 안됩니다. 그렇지 않으면 동작이 정의되지 않습니다.

적용 대상