다음을 통해 공유


HttpBaseProtocolFilter 클래스

정의

HttpClient instance 대한 기본 프로토콜 필터입니다.

public ref class HttpBaseProtocolFilter sealed : IClosable
public ref class HttpBaseProtocolFilter sealed : IClosable, IHttpFilter
/// [Windows.Foundation.Metadata.Activatable(65536, Windows.Foundation.UniversalApiContract)]
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
class HttpBaseProtocolFilter final : IClosable
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
/// [Windows.Foundation.Metadata.Activatable(65536, "Windows.Foundation.UniversalApiContract")]
class HttpBaseProtocolFilter final : IClosable
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
/// [Windows.Foundation.Metadata.Activatable(65536, "Windows.Foundation.UniversalApiContract")]
class HttpBaseProtocolFilter final : IClosable, IHttpFilter
[Windows.Foundation.Metadata.Activatable(65536, typeof(Windows.Foundation.UniversalApiContract))]
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
public sealed class HttpBaseProtocolFilter : System.IDisposable
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
[Windows.Foundation.Metadata.Activatable(65536, "Windows.Foundation.UniversalApiContract")]
public sealed class HttpBaseProtocolFilter : System.IDisposable
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
[Windows.Foundation.Metadata.Activatable(65536, "Windows.Foundation.UniversalApiContract")]
public sealed class HttpBaseProtocolFilter : System.IDisposable, IHttpFilter
function HttpBaseProtocolFilter()
Public NotInheritable Class HttpBaseProtocolFilter
Implements IDisposable
Public NotInheritable Class HttpBaseProtocolFilter
Implements IDisposable, IHttpFilter
상속
Object Platform::Object IInspectable HttpBaseProtocolFilter
특성
구현

Windows 요구 사항

디바이스 패밀리
Windows 10 (10.0.10240.0에서 도입되었습니다.)
API contract
Windows.Foundation.UniversalApiContract (v1.0에서 도입되었습니다.)

설명

HttpBaseProtocolFilter 클래스는 HttpClient instance 사용되는 기본 필터 또는 처리기를 제공합니다. HttpClient instance 추가 필터가 추가되지 않으면 HttpBaseProtocolFilter 개체가 유일한 필터가 됩니다.

HttpBaseProtocolFilter 클래스는 다양한 하위 수준 HTTP 스택 동작을 전환하기 위한 속성 집합을 제공합니다.

IHttpFilter 인터페이스를 기반으로 하는 추가 필터는 HttpBaseProtocolFilter 개체의 결과를 추가로 처리하거나 처리할 수 있는 HttpClient instance 적용된 필터 체인에 추가할 수 있습니다.

HttpBaseProtocolFilter 개체는 HTTP 요청을 보내거나 응답을 받을 때 예외를 throw하고 네트워크 오류가 발생합니다(예: 비행기 모드에서 연결이 끊어지는 경우). 앱에서 HttpClient 를 사용하는 개발자는 이러한 예외를 catch하고 대신 HTTP 응답 코드로 변환하는 필터를 추가하는 것을 선호할 수 있습니다.

버전 기록

Windows 버전 SDK 버전 추가된 값
1511 10586 CookieUsageBehavior
1607 14393 ClearAuthenticationCache
1607 14393 ServerCustomValidationRequested
1903 18362 CreateForUser
1903 18362 사용자

생성자

HttpBaseProtocolFilter()

HttpBaseProtocolFilter 클래스의 새 instance 초기화합니다.

데스크톱 앱에서 UI를 표시하는 방식으로 이 클래스의 instance 사용하기 전에 개체를 소유자의 창 핸들과 연결해야 합니다. 자세한 정보 및 코드 예제는 CoreWindow에 의존하는 WinRT UI 개체 표시를 참조하세요.

속성

AllowAutoRedirect

HttpBaseProtocolFilter가 리디렉션 응답을 따라야 하는지 여부를 나타내는 값을 얻거나 설정합니다.

AllowUI

서버에서 요청할 때 HttpBaseProtocolFilter 에서 사용자 자격 증명을 묻는 메시지를 표시할 수 있는지 여부를 나타내는 값을 얻거나 설정합니다.

AutomaticDecompression

HttpBaseProtocolFilter가 HTTP 콘텐츠 응답을 자동으로 압축 해제할 수 있는지 여부를 나타내는 값을 가져오거나 설정합니다.

CacheControl

HttpBaseProtocolFilter 개체에 사용할 읽기 및 쓰기 캐시 컨트롤 동작을 가져오기 또는 설정합니다.

ClientCertificate

서버에서 클라이언트 인증서를 요청하는 경우 서버로 전송될 클라이언트 SSL 인증서를 다운로드하거나 설정합니다.

CookieManager

앱과 연결된 쿠키를 사용하여 HttpCookieManager 를 가져옵니다.

CookieUsageBehavior

쿠키 사용 동작을 가져오거나 설정합니다. 기본적으로 쿠키는 자동으로 처리됩니다.

IgnorableServerCertificateErrors

앱이 나중에 무시하도록 선택할 수 있는 SSL 서버 인증서 오류의 벡터를 가져옵니다.

MaxConnectionsPerServer

HttpBaseProtocolFilter 개체에서 HTTP 서버당 허용되는 최대 TCP 연결 수를 얻거나 설정합니다.

MaxVersion

사용된 HTTP 프로토콜의 버전을 가져오거나 설정합니다.

ProxyCredential

HTTP 프록시와 협상하는 데 사용할 자격 증명을 얻거나 설정합니다.

ServerCredential

HTTP 서버에서 인증하는 데 사용할 자격 증명을 얻거나 설정합니다.

UseProxy

HttpBaseProtocolFilter가 HTTP 요청을 보내는 데 프록시를 사용할 수 있는지 여부를 나타내는 값을 얻거나 설정합니다.

User

HttpBaseProtocolFilter와 연결된 사용자를 가져옵니다.

메서드

ClearAuthenticationCache()

디바이스에 현재 캐시된 인증 자격 증명을 지웁니다.

Close()

HttpBaseProtocolFilter instance 닫고 할당된 리소스를 해제합니다.

CreateForUser(User)

특정 사용자에 대한 새 HttpBaseProtocolFilter를 만듭니다.

Dispose()

관리되지 않는 리소스의 확보, 해제 또는 다시 설정과 관련된 애플리케이션 정의 작업을 수행합니다.

SendRequestAsync(HttpRequestMessage)

HttpBaseProtocolFilter를 비동기 작업으로 사용하여 HTTP 요청을 보냅니다.

이벤트

ServerCustomValidationRequested

이 이벤트는 SSL/TLS 연결이 서버와 설정될 때 발생합니다. 서버 SSL 인증서의 추가 유효성 검사(OS 기본값 외에도)를 수행해야 하는 경우 이 이벤트에 대한 이벤트 처리기를 구현해야 합니다.

적용 대상

추가 정보