IHttpFilter.SendRequestAsync(HttpRequestMessage) 메서드
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
IHttpFilter instance HTTP 요청을 비동기 작업으로 보냅니다.
public:
IAsyncOperationWithProgress<HttpResponseMessage ^, HttpProgress> ^ SendRequestAsync(HttpRequestMessage ^ request);
/// [Windows.Foundation.Metadata.RemoteAsync]
IAsyncOperationWithProgress<HttpResponseMessage, HttpProgress> SendRequestAsync(HttpRequestMessage const& request);
[Windows.Foundation.Metadata.RemoteAsync]
public IAsyncOperationWithProgress<HttpResponseMessage,HttpProgress> SendRequestAsync(HttpRequestMessage request);
function sendRequestAsync(request)
Public Function SendRequestAsync (request As HttpRequestMessage) As IAsyncOperationWithProgress(Of HttpResponseMessage, HttpProgress)
매개 변수
- request
- HttpRequestMessage
보낼 HTTP 요청 메시지입니다.
반환
비동기 작업을 나타내는 개체입니다.
- 특성
설명
사용자 지정 필터는 해당 IHttpFilter 인터페이스의 SendRequestAsync 메서드에서 구현됩니다.
Windows.Web.Http 네임스페이스의 클래스는 Windows.Web.Http.Filters 네임스페이스의 클래스를 기반으로 필터 사용을 지원합니다. Windows.Web.Http 네임스페이스의 HttpClient 클래스는 HTTP 요청을 보내고 HTTP 응답을 수신하기 위한 기본 클래스를 제공합니다. 필터는 일반적인 HTTP 서비스 문제에 도움이 되는 처리기 메커니즘을 제공합니다. 더 복잡한 HTTP 서비스 문제를 처리하기 위해 간단한 필터를 시퀀스로 함께 연결할 수 있습니다.
HTTP 필터는 HTTP 요청 메시지를 사용하고 HTTP 응답 메시지를 생성하는 블랙박스입니다. 필터가 HTTP 응답을 가져오는 방법은 필터 개발자가 결정합니다. 앱은 즉시 응답을 만들 수 있고, TCP를 통해 요청을 서버로 보낼 수 있으며, 응답 메시지를 생성하기 전에 서버(또는 둘 이상의 서버)에 여러 요청을 보낼 수도 있습니다. 필터가 응답 메시지에 액세스하는 방법은 지정되지 않으므로 필터는 요청 메시지를 다른 필터(내부 필터라고 함)에 전달하여 내부 필터에 대한 응답 메시지 생성을 위임할 수 있습니다.
필터는 일반적으로 헤더를 추가하거나 변경하거나, 권한 부여( WebAuthenticationBroker 사용)를 처리하거나, 네트워크 조건에 따라 요청을 허용하거나 허용하지 않습니다. 필터는 일반적으로 변경한 다음 내부 필터에 요청을 전달합니다. 이 필터는 일반적으로 필터가 생성될 때 설정됩니다.
이 방법을 사용하면 필터가 HTTP 요청 실행의 특정 측면만 담당하고 다른 측면을 다른 필터에 위임할 수 있습니다. 필터는 캐싱, 인증, 리디렉션, 쿠키, 서버와의 실제 통신 또는 이러한 조합을 구현할 수 있습니다. 가장 낮은(기본) 필터는 일반적으로 네트워크와의 실제 통신을 수행하는 필터입니다.
다음은 이 함수가 throw하는 몇 가지 예외입니다.
E_INVALIDARG
요청 매개 변수가 null 참조(Visual Basic의 경우 Nothing)였습니다.
E_ILLEGAL_METHOD_CALL
요청 메시지는 IHttpFilter instance 이미 전송되었습니다.