다음을 통해 공유


System.Net.Http 네임스페이스

최신 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 네임스페이스는 다음 구성 요소 집합을 제공합니다.

사용할 수 있는 다양한 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.HttpSystem.Net.Http.Headers 네임스페이스를 사용하고 대량의 데이터(50MB 이상)를 다운로드하려는 경우 해당 다운로드를 스트리밍하고 기본 버퍼링을 사용하지 않아야 합니다. 기본 버퍼링을 사용하는 경우 클라이언트 메모리 사용량이 매우 커져 성능이 크게 저하될 수 있습니다.

추가 정보