System.Net.Http 네임스페이스
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
최신 HTTP 애플리케이션에 대한 프로그래밍 인터페이스를 제공합니다.
클래스
| Name | Description |
|---|---|
| ByteArrayContent |
바이트 배열을 기반으로 HTTP 콘텐츠를 제공합니다. |
| DelegatingHandler |
HTTP 응답 메시지의 처리를 내부 처리기라고 하는 다른 처리기에 위임하는 HTTP 처리기의 형식입니다. |
| FormUrlEncodedContent |
application/x-www-form-urlencoded MIME 형식을 사용하여 인코딩된 이름/값 튜플에 대한 컨테이너입니다. |
| HttpClient |
HTTP 요청을 보내고 URI로 식별된 리소스에서 HTTP 응답을 수신하기 위한 클래스를 제공합니다. |
| HttpClientFactoryExtensions |
에 대한 IHttpClientFactory확장 메서드 |
| HttpClientHandler |
.NET Framework 및 .NET Core 2.0 이하에서 사용하는 HttpClient 기본 메시지 처리기입니다. |
| HttpContent |
HTTP 엔터티 본문 및 콘텐츠 헤더를 나타내는 기본 클래스입니다. |
| HttpDiagnosticsHttpRequestMessageExtensions |
원격 분석 유틸리티에 대한 확장입니다. |
| HttpIOException |
응답을 읽는 동안 오류가 발생할 때 throw되는 예외입니다. |
| HttpMessageHandler |
HTTP 메시지 처리기의 기본 형식입니다. |
| HttpMessageHandlerFactoryExtensions |
에 대한 IHttpMessageHandlerFactory확장 메서드 |
| HttpMessageInvoker |
애플리케이션이 HTTP 처리기 체인에서 메서드를 호출 SendAsync(HttpRequestMessage, CancellationToken) 할 수 있도록 하는 특수 클래스입니다. |
| HttpMethod |
표준 HTTP 메서드를 검색 및 비교하고 새 HTTP 메서드를 만들기 위한 도우미 클래스입니다. |
| HttpProtocolException |
HTTP/2 또는 HTTP/3 프로토콜 오류가 발생할 때 throw되는 예외입니다. |
| HttpRequestException |
및 HttpMessageHandler 클래스에서 throw된 예외에 HttpClient 대한 기본 클래스입니다. |
| HttpRequestMessage |
HTTP 요청 메시지를 나타냅니다. |
| HttpRequestOptions |
HTTP 요청에 대한 옵션 컬렉션을 나타냅니다. |
| HttpResilienceHttpRequestMessageExtensions |
에 대한 HttpRequestMessage복원력 확장입니다. |
| HttpResponseMessage |
상태 코드 및 데이터를 포함하는 HTTP 응답 메시지를 나타냅니다. |
| MessageProcessingHandler |
요청 및/또는 응답 메시지의 일부 작은 처리만 수행하는 처리기의 기본 형식입니다. |
| MultipartContent |
multipart/* 콘텐츠 형식 사양을 사용하여 serialize되는 개체의 컬렉션을 HttpContent 제공합니다. |
| MultipartFormDataContent |
다중 파트/양식 데이터 MIME 형식을 사용하여 인코딩된 콘텐츠에 대한 컨테이너를 제공합니다. |
| ReadOnlyMemoryContent |
를 기반으로 ReadOnlyMemory<T>HTTP 콘텐츠를 제공합니다. |
| RtcRequestFactory |
최신 HTTP 애플리케이션에 대한 프로그래밍 인터페이스를 제공합니다. |
| SocketsHttpConnectionContext |
인스턴스에 전달된 컨텍스트를 ConnectCallback 나타냅니다 SocketsHttpHandler . . |
| SocketsHttpHandler |
.NET Core 2.1 이상에서 사용하는 HttpClient 기본 메시지 처리기를 제공합니다. |
| SocketsHttpPlaintextStreamFilterContext |
SocketsHttpHandler 인스턴스에 대해 PlaintextStreamFilter에 전달된 컨텍스트를 나타냅니다. |
| StreamContent |
스트림을 기반으로 HTTP 콘텐츠를 제공합니다. |
| StringContent |
문자열을 기반으로 HTTP 콘텐츠를 제공합니다. |
| WebRequestHandler |
Windows 스토어 앱 또는 다른 환경에서는 사용할 수 없는 데스크톱 관련 기능을 제공합니다. |
| WinHttpHandler |
Windows의 WinHTTP 인터페이스를 기반으로 메시지를 처리합니다. 이 클래스는 서버 환경에서 사용하기 위한 것입니다. |
구조체
| Name | Description |
|---|---|
| HttpRequestOptionsKey<TValue> |
HTTP 요청에 대한 옵션 컬렉션의 키를 나타냅니다. |
인터페이스
| Name | Description |
|---|---|
| IHttpClientFactory |
지정된 논리 이름에 대한 사용자 지정 구성을 사용하여 인스턴스를 만들 HttpClient 수 있는 구성 요소에 대한 팩터리 추상화입니다. |
| IHttpMessageHandlerFactory |
지정된 논리 이름에 대한 사용자 지정 구성을 사용하여 인스턴스를 만들 HttpMessageHandler 수 있는 구성 요소에 대한 팩터리 추상화입니다. |
열거형
| Name | Description |
|---|---|
| ClientCertificateOption |
클라이언트 인증서를 제공하는 방법을 지정합니다. |
| CookieUsePolicy |
이 열거형을 사용하면 서버와 통신할 때 HTTP 쿠키를 제어할 수 있습니다. |
| HttpCompletionOption |
응답을 사용할 수 있는 즉시 또는 콘텐츠를 포함한 전체 응답 메시지를 읽은 후 HttpClient 작업이 완료된 것으로 간주되어야 하는지 여부를 나타냅니다. |
| HttpKeepAlivePingPolicy |
HTTP/2 ping 프레임이 유휴 연결에서 전송되는 시기를 지정합니다. |
| HttpRequestError |
HttpRequestException 또는 HttpIOException이유를 나타내는 오류 범주를 정의합니다. |
| HttpVersionPolicy |
요청에 대한 HTTP 버전을 선택하고 협상하기 위한 동작을 지정합니다. |
| WindowsProxyUsePolicy |
이 열거형은 Windows에서 실행할 때 HttpClient 사용하는 프록시 설정에 사용할 수 있는 옵션을 제공합니다. |
대리자
| Name | Description |
|---|---|
| HeaderEncodingSelector<TContext> |
헤더 값을 해석할 때 사용할 인코딩을 지정하는 메서드를 나타냅니다. |
설명
System.Net.Http 네임스페이스는 다음 구성 요소를 제공하도록 설계되었습니다.
- 사용자가 HTTP를 통해 최신 웹 서비스를 사용할 수 있도록 하는 HTTP 클라이언트 구성 요소입니다.
- 클라이언트와 서버 모두에서 사용할 수 있는 HTTP 구성 요소(예: HTTP 헤더 및 메시지). 이렇게 하면 HTTP를 통한 최신 웹 서비스에 대한 클라이언트와 서버 쪽 모두에서 일관된 프로그래밍 모델을 제공합니다.
네임스페이 System.Net.Http 스 및 관련 System.Net.Http.Headers 네임스페이스는 다음 구성 요소 집합을 제공합니다.
- HttpClient - HTTP를 통해 요청을 보내고 받는 데 사용되는 기본 클래스입니다.
- HttpRequestMessage and HttpResponseMessage - IETF에 의해 RFC 2616에 정의된 HTTP 메시지입니다.
- HttpHeaders - IETF에 의해 RFC 2616에 정의된 HTTP 헤더입니다.
- HttpClientHandler - HTTP 응답 메시지 생성을 담당하는 HTTP 처리기입니다.
사용할 수 있는 다양한 HTTP 메시지 처리기가 있습니다.
- DelegatingHandler - 처리기를 처리기 체인에 연결하는 데 사용되는 클래스입니다.
- HttpMessageHandler - 파생되는 간단한 클래스는 대부분의 애플리케이션에 대한 가장 일반적인 요구 사항을 지원합니다.
- HttpClientHandler - 실제로 HTTP 전송 작업을 처리하는 처리기 체인의 맨 아래에서 작동하는 클래스입니다.
HTTP 메시지의 내용은 RFC 2616에 정의된 엔터티 본문에 해당합니다.
HTTP 콘텐츠에 사용할 수 있는 클래스는 다음과 같습니다.
- ByteArrayContent - 바이트 배열을 기반으로 하는 HTTP 콘텐츠입니다.
- FormUrlEncodedContent - application/x-www-form-urlencoded MIME 형식을 사용하여 인코딩된 이름/값 튜플의 HTTP 콘텐츠입니다.
- MultipartContent - 다중 파트/* 콘텐츠 형식 사양을 사용하여 serialize되는 HTTP 콘텐츠입니다.
- MultipartFormDataContent - 다중 파트/양식 데이터 MIME 형식을 사용하여 인코딩된 HTTP 콘텐츠입니다.
- StreamContent - 스트림을 기반으로 하는 HTTP 콘텐츠입니다.
- StringContent - 문자열을 기반으로 하는 HTTP 콘텐츠입니다.
앱이 System.Net.Http 및 System.Net.Http.Headers 네임스페이스를 사용하고 대량의 데이터(50MB 이상)를 다운로드하려는 경우 해당 다운로드를 스트리밍하고 기본 버퍼링을 사용하지 않아야 합니다. 기본 버퍼링을 사용하는 경우 클라이언트 메모리 사용량이 매우 커져 성능이 크게 저하될 수 있습니다.