다음을 통해 공유


HttpClient 클래스

정의

HTTP 요청을 보내고 URI로 식별된 리소스에서 HTTP 응답을 수신하기 위한 클래스를 제공합니다.

public ref class HttpClient : System::Net::Http::HttpMessageInvoker
public class HttpClient : System.Net.Http.HttpMessageInvoker
type HttpClient = class
    inherit HttpMessageInvoker
Public Class HttpClient
Inherits HttpMessageInvoker
상속

예제

// HttpClient is intended to be instantiated once per application, rather than per-use. See Remarks.
static readonly HttpClient client = new HttpClient();

static async Task Main()
{
    // Call asynchronous network methods in a try/catch block to handle exceptions.
    try
    {
        using HttpResponseMessage response = await client.GetAsync("http://www.contoso.com/");
        response.EnsureSuccessStatusCode();
        string responseBody = await response.Content.ReadAsStringAsync();
        // Above three lines can be replaced with new helper method below
        // string responseBody = await client.GetStringAsync(uri);

        Console.WriteLine(responseBody);
    }
    catch (HttpRequestException e)
    {
        Console.WriteLine("\nException Caught!");
        Console.WriteLine("Message :{0} ", e.Message);
    }
}
open System.Net.Http

// HttpClient is intended to be instantiated once per application, rather than per-use. See Remarks.
let client = new HttpClient()

let main =
    task {
        // Call asynchronous network methods in a try/catch block to handle exceptions.
        try
            use! response = client.GetAsync "http://www.contoso.com/"
            response.EnsureSuccessStatusCode() |> ignore
            let! responseBody = response.Content.ReadAsStringAsync()
            // Above three lines can be replaced with new helper method below
            // let! responseBody = client.GetStringAsync uri

            printfn $"{responseBody}"
        with
        | :? HttpRequestException as e ->
            printfn "\nException Caught!"
            printfn $"Message :{e.Message} "
    }

main.Wait()
' HttpClient is intended to be instantiated once per application, rather than per-use. See Remarks.
Shared ReadOnly client As HttpClient = New HttpClient()

Private Shared Async Function Main() As Task
    ' Call asynchronous network methods in a try/catch block to handle exceptions.
    Try
        Using response As HttpResponseMessage = Await client.GetAsync("http://www.contoso.com/")
            response.EnsureSuccessStatusCode()
            Dim responseBody As String = Await response.Content.ReadAsStringAsync()
            ' Above three lines can be replaced with new helper method below
            ' Dim responseBody As String = Await client.GetStringAsync(uri)

            Console.WriteLine(responseBody)
        End Using
    Catch e As HttpRequestException
        Console.WriteLine(Environment.NewLine & "Exception Caught!")
        Console.WriteLine("Message :{0} ", e.Message)
    End Try
End Function

설명

이 API에 대한 자세한 내용은 HttpClient에 대한 추가 API 설명을 참조하세요.

생성자

HttpClient()

이 인스턴스가 삭제될 때 폐기되는 HttpClientHandler를 사용하여 HttpClient 클래스의 새 인스턴스를 초기화합니다.

HttpClient(HttpMessageHandler)

지정된 처리기를 사용하여 HttpClient 클래스의 새 인스턴스를 초기화합니다. 이 인스턴스가 삭제될 때 처리기가 삭제됩니다.

HttpClient(HttpMessageHandler, Boolean)

제공된 처리기를 사용하여 HttpClient 클래스의 새 인스턴스를 초기화하고 이 인스턴스를 삭제할 때 해당 처리기를 삭제할지 여부를 지정합니다.

속성

BaseAddress

요청을 보낼 때 사용된 인터넷 리소스의 URI(Uniform Resource Identifier)의 기준 주소를 가져오거나 설정합니다.

DefaultProxy

글로벌 HTTP 프록시를 가져오거나 설정합니다.

DefaultRequestHeaders

각 요청과 함께 보내야 하는 헤더를 가져옵니다.

DefaultRequestVersion

HttpClient 인스턴스에서 수행한 후속 요청에서 사용하는 기본 HTTP 버전을 가져오거나 설정합니다.

DefaultVersionPolicy

편의 메서드(예: GetAsync(String)PostAsync(String, HttpContent))에 암시적으로 만들어진 요청에 대한 기본 버전 정책을 가져오거나 설정합니다.

MaxResponseContentBufferSize

응답 콘텐츠를 읽을 경우 버퍼링할 최대 바이트 수를 가져오거나 설정합니다.

Timeout

요청 시간 제한 범위 내에서 대기할 기간을 가져오거나 설정합니다.

메서드

CancelPendingRequests()

이 인스턴스에서 보류 중인 모든 요청을 취소합니다.

DeleteAsync(String)

DELETE 요청을 지정된 URI에 비동기 작업으로 보냅니다.

DeleteAsync(String, CancellationToken)

취소 토큰이 포함된 지정한 URI에 DELETE 요청을 비동기 작업으로 보냅니다.

DeleteAsync(Uri)

DELETE 요청을 지정된 URI에 비동기 작업으로 보냅니다.

DeleteAsync(Uri, CancellationToken)

취소 토큰이 포함된 지정한 URI에 DELETE 요청을 비동기 작업으로 보냅니다.

Dispose()

관리되지 않는 리소스를 해제하고, HttpMessageInvoker에서 사용하는 관리되는 리소스를 삭제합니다.

(다음에서 상속됨 HttpMessageInvoker)
Dispose(Boolean)

HttpClient에서 사용하는 관리되지 않는 리소스를 해제하고 관리되는 리소스를 선택적으로 삭제할 수 있습니다.

Equals(Object)

지정된 개체가 현재 개체와 같은지 확인합니다.

(다음에서 상속됨 Object)
GetAsync(String)

GET 요청을 지정된 URI에 비동기 작업으로 보냅니다.

GetAsync(String, CancellationToken)

취소 토큰이 포함된 지정한 URI에 GET 요청을 비동기 작업으로 보냅니다.

GetAsync(String, HttpCompletionOption)

HTTP 완료 옵션이 포함된 지정한 URI에 GET 요청을 비동기 작업으로 보냅니다.

GetAsync(String, HttpCompletionOption, CancellationToken)

HTTP 완료 옵션 및 취소 토큰을 사용하여 지정한 URL에 비동기 작업으로 GET 요청을 보냅니다.

GetAsync(Uri)

GET 요청을 지정된 URI에 비동기 작업으로 보냅니다.

GetAsync(Uri, CancellationToken)

취소 토큰이 포함된 지정한 URI에 GET 요청을 비동기 작업으로 보냅니다.

GetAsync(Uri, HttpCompletionOption)

HTTP 완료 옵션이 포함된 지정한 URI에 GET 요청을 비동기 작업으로 보냅니다.

GetAsync(Uri, HttpCompletionOption, CancellationToken)

HTTP 완료 옵션 및 취소 토큰을 사용하여 지정한 URL에 비동기 작업으로 GET 요청을 보냅니다.

GetByteArrayAsync(String)

GET 요청을 지정된 URI에 보내고 비동기 작업에서 바이트 배열로 응답 본문을 반환합니다.

GetByteArrayAsync(String, CancellationToken)

GET 요청을 지정된 URI에 보내고 비동기 작업에서 바이트 배열로 응답 본문을 반환합니다.

GetByteArrayAsync(Uri)

GET 요청을 지정된 URI에 보내고 비동기 작업에서 바이트 배열로 응답 본문을 반환합니다.

GetByteArrayAsync(Uri, CancellationToken)

GET 요청을 지정된 URI에 보내고 비동기 작업에서 바이트 배열로 응답 본문을 반환합니다.

GetHashCode()

기본 해시 함수로 작동합니다.

(다음에서 상속됨 Object)
GetStreamAsync(String)

GET 요청을 지정된 URI에 보내고 비동기 작업에서 스트림으로 응답 본문을 반환합니다.

GetStreamAsync(String, CancellationToken)

GET 요청을 지정된 URI에 보내고 비동기 작업에서 스트림으로 응답 본문을 반환합니다.

GetStreamAsync(Uri)

GET 요청을 지정된 URI에 보내고 비동기 작업에서 스트림으로 응답 본문을 반환합니다.

GetStreamAsync(Uri, CancellationToken)

GET 요청을 지정된 URI에 보내고 비동기 작업에서 스트림으로 응답 본문을 반환합니다.

GetStringAsync(String)

GET 요청을 지정된 URI에 보내고 비동기 작업에서 문자열로 응답 본문을 반환합니다.

GetStringAsync(String, CancellationToken)

GET 요청을 지정된 URI에 보내고 비동기 작업에서 문자열로 응답 본문을 반환합니다.

GetStringAsync(Uri)

GET 요청을 지정된 URI에 보내고 비동기 작업에서 문자열로 응답 본문을 반환합니다.

GetStringAsync(Uri, CancellationToken)

GET 요청을 지정된 URI에 보내고 비동기 작업에서 문자열로 응답 본문을 반환합니다.

GetType()

현재 인스턴스의 Type을 가져옵니다.

(다음에서 상속됨 Object)
MemberwiseClone()

현재 Object의 단순 복사본을 만듭니다.

(다음에서 상속됨 Object)
PatchAsync(String, HttpContent)

PATCH 요청을 비동기 작업으로 지정된 Uri에 문자열로 보냅니다.

PatchAsync(String, HttpContent, CancellationToken)

취소 토큰이 포함된 PATCH 요청을 비동기 작업으로 문자열로 표현되는 Uri로 보냅니다.

PatchAsync(Uri, HttpContent)

PATCH 요청을 비동기 작업으로 보냅니다.

PatchAsync(Uri, HttpContent, CancellationToken)

취소 토큰이 포함된 PATCH 요청을 비동기 작업으로 보냅니다.

PostAsync(String, HttpContent)

POST 요청을 지정된 URI에 비동기 작업으로 보냅니다.

PostAsync(String, HttpContent, CancellationToken)

취소 토큰이 포함된 POST 요청을 비동기 작업으로 보냅니다.

PostAsync(Uri, HttpContent)

POST 요청을 지정된 URI에 비동기 작업으로 보냅니다.

PostAsync(Uri, HttpContent, CancellationToken)

취소 토큰이 포함된 POST 요청을 비동기 작업으로 보냅니다.

PutAsync(String, HttpContent)

PUT 요청을 지정된 URI에 비동기 작업으로 보냅니다.

PutAsync(String, HttpContent, CancellationToken)

취소 토큰이 포함된 PUT 요청을 비동기 작업으로 보냅니다.

PutAsync(Uri, HttpContent)

PUT 요청을 지정된 URI에 비동기 작업으로 보냅니다.

PutAsync(Uri, HttpContent, CancellationToken)

취소 토큰이 포함된 PUT 요청을 비동기 작업으로 보냅니다.

Send(HttpRequestMessage)

지정된 요청을 사용하여 HTTP 요청을 보냅니다.

Send(HttpRequestMessage, CancellationToken)

지정된 요청 및 취소 토큰을 사용하여 HTTP 요청을 보냅니다.

Send(HttpRequestMessage, CancellationToken)

지정된 요청 및 취소 토큰을 사용하여 HTTP 요청을 보냅니다.

(다음에서 상속됨 HttpMessageInvoker)
Send(HttpRequestMessage, HttpCompletionOption)

HTTP 요청을 보냅니다.

Send(HttpRequestMessage, HttpCompletionOption, CancellationToken)

지정된 요청, 완료 옵션 및 취소 토큰을 사용하여 HTTP 요청을 보냅니다.

SendAsync(HttpRequestMessage)

HTTP 요청을 비동기 작업으로 보냅니다.

SendAsync(HttpRequestMessage, CancellationToken)

HTTP 요청을 비동기 작업으로 보냅니다.

SendAsync(HttpRequestMessage, HttpCompletionOption)

HTTP 요청을 비동기 작업으로 보냅니다.

SendAsync(HttpRequestMessage, HttpCompletionOption, CancellationToken)

HTTP 요청을 비동기 작업으로 보냅니다.

ToString()

현재 개체를 나타내는 문자열을 반환합니다.

(다음에서 상속됨 Object)

확장 메서드

DeleteFromJsonAsync(HttpClient, String, Type, JsonSerializerOptions, CancellationToken)

지정된 Uri에 DELETE 요청을 보내고 비동기 작업에서 응답 본문을 JSON으로 역직렬화한 결과 값을 반환합니다.

DeleteFromJsonAsync(HttpClient, String, Type, JsonSerializerContext, CancellationToken)

지정된 Uri에 DELETE 요청을 보내고 비동기 작업에서 응답 본문을 JSON으로 역직렬화한 결과 값을 반환합니다.

DeleteFromJsonAsync(HttpClient, String, Type, CancellationToken)

지정된 Uri에 DELETE 요청을 보내고 비동기 작업에서 응답 본문을 JSON으로 역직렬화한 결과 값을 반환합니다.

DeleteFromJsonAsync(HttpClient, Uri, Type, JsonSerializerOptions, CancellationToken)

지정된 Uri에 DELETE 요청을 보내고 비동기 작업에서 응답 본문을 JSON으로 역직렬화한 결과 값을 반환합니다.

DeleteFromJsonAsync(HttpClient, Uri, Type, JsonSerializerContext, CancellationToken)

지정된 Uri에 DELETE 요청을 보내고 비동기 작업에서 응답 본문을 JSON으로 역직렬화한 결과 값을 반환합니다.

DeleteFromJsonAsync(HttpClient, Uri, Type, CancellationToken)

지정된 Uri에 DELETE 요청을 보내고 비동기 작업에서 응답 본문을 JSON으로 역직렬화한 결과 값을 반환합니다.

DeleteFromJsonAsync<TValue>(HttpClient, String, JsonSerializerOptions, CancellationToken)

지정된 Uri에 DELETE 요청을 보내고 비동기 작업에서 응답 본문을 JSON으로 역직렬화한 결과 값을 반환합니다.

DeleteFromJsonAsync<TValue>(HttpClient, String, JsonTypeInfo<TValue>, CancellationToken)

지정된 Uri에 DELETE 요청을 보내고 비동기 작업에서 응답 본문을 JSON으로 역직렬화한 결과 값을 반환합니다.

DeleteFromJsonAsync<TValue>(HttpClient, String, CancellationToken)

지정된 Uri에 DELETE 요청을 보내고 비동기 작업에서 응답 본문을 JSON으로 역직렬화한 결과 값을 반환합니다.

DeleteFromJsonAsync<TValue>(HttpClient, Uri, JsonSerializerOptions, CancellationToken)

지정된 Uri에 DELETE 요청을 보내고 비동기 작업에서 응답 본문을 JSON으로 역직렬화한 결과 값을 반환합니다.

DeleteFromJsonAsync<TValue>(HttpClient, Uri, JsonTypeInfo<TValue>, CancellationToken)

지정된 Uri에 DELETE 요청을 보내고 비동기 작업에서 응답 본문을 JSON으로 역직렬화한 결과 값을 반환합니다.

DeleteFromJsonAsync<TValue>(HttpClient, Uri, CancellationToken)

지정된 Uri에 DELETE 요청을 보내고 비동기 작업에서 응답 본문을 JSON으로 역직렬화한 결과 값을 반환합니다.

GetFromJsonAsAsyncEnumerable<TValue>(HttpClient, String, JsonSerializerOptions, CancellationToken)

지정된 requestUriHTTP GET 요청을 보내고 비동기 열거 가능 작업에서 응답 본문을 JSON으로 역직렬화하여 발생하는 값을 반환합니다.

GetFromJsonAsAsyncEnumerable<TValue>(HttpClient, String, JsonTypeInfo<TValue>, CancellationToken)

지정된 requestUriHTTP GET요청을 보내고 비동기 열거 가능 작업에서 응답 본문을 JSON으로 역직렬화하여 발생하는 값을 반환합니다.

GetFromJsonAsAsyncEnumerable<TValue>(HttpClient, String, CancellationToken)

지정된 requestUriHTTP GET요청을 보내고 비동기 열거 가능 작업에서 응답 본문을 JSON으로 역직렬화하여 발생하는 값을 반환합니다.

GetFromJsonAsAsyncEnumerable<TValue>(HttpClient, Uri, JsonSerializerOptions, CancellationToken)

지정된 requestUriHTTP GET요청을 보내고 비동기 열거 가능 작업에서 응답 본문을 JSON으로 역직렬화하여 발생하는 값을 반환합니다.

GetFromJsonAsAsyncEnumerable<TValue>(HttpClient, Uri, JsonTypeInfo<TValue>, CancellationToken)

지정된 requestUriHTTP GET요청을 보내고 비동기 열거 가능 작업에서 응답 본문을 JSON으로 역직렬화하여 발생하는 값을 반환합니다.

GetFromJsonAsAsyncEnumerable<TValue>(HttpClient, Uri, CancellationToken)

지정된 requestUriHTTP GET요청을 보내고 비동기 열거 가능 작업에서 응답 본문을 JSON으로 역직렬화하여 발생하는 값을 반환합니다.

GetFromJsonAsync(HttpClient, String, Type, JsonSerializerOptions, CancellationToken)

GET 요청을 지정된 URI에 보내고 비동기 작업에서 응답 본문을 JSON으로 역직렬화한 결과 생성된 값을 반환합니다.

GetFromJsonAsync(HttpClient, String, Type, JsonSerializerContext, CancellationToken)

GET 요청을 지정된 URI에 보내고 비동기 작업에서 응답 본문을 JSON으로 역직렬화한 결과 생성된 값을 반환합니다.

GetFromJsonAsync(HttpClient, String, Type, CancellationToken)

GET 요청을 지정된 URI에 보내고 비동기 작업에서 응답 본문을 JSON으로 역직렬화한 결과 생성된 값을 반환합니다.

GetFromJsonAsync(HttpClient, Uri, Type, JsonSerializerOptions, CancellationToken)

GET 요청을 지정된 URI에 보내고 비동기 작업에서 응답 본문을 JSON으로 역직렬화한 결과 생성된 값을 반환합니다.

GetFromJsonAsync(HttpClient, Uri, Type, JsonSerializerContext, CancellationToken)

GET 요청을 지정된 URI에 보내고 비동기 작업에서 응답 본문을 JSON으로 역직렬화한 결과 생성된 값을 반환합니다.

GetFromJsonAsync(HttpClient, Uri, Type, CancellationToken)

GET 요청을 지정된 URI에 보내고 비동기 작업에서 응답 본문을 JSON으로 역직렬화한 결과 생성된 값을 반환합니다.

GetFromJsonAsync<TValue>(HttpClient, String, JsonSerializerOptions, CancellationToken)

GET 요청을 지정된 URI에 보내고 비동기 작업에서 응답 본문을 JSON으로 역직렬화한 결과 생성된 값을 반환합니다.

GetFromJsonAsync<TValue>(HttpClient, String, JsonTypeInfo<TValue>, CancellationToken)

GET 요청을 지정된 URI에 보내고 비동기 작업에서 응답 본문을 JSON으로 역직렬화한 결과 생성된 값을 반환합니다.

GetFromJsonAsync<TValue>(HttpClient, String, CancellationToken)

GET 요청을 지정된 URI에 보내고 비동기 작업에서 응답 본문을 JSON으로 역직렬화한 결과 생성된 값을 반환합니다.

GetFromJsonAsync<TValue>(HttpClient, Uri, JsonSerializerOptions, CancellationToken)

GET 요청을 지정된 URI에 보내고 비동기 작업에서 응답 본문을 JSON으로 역직렬화한 결과 생성된 값을 반환합니다.

GetFromJsonAsync<TValue>(HttpClient, Uri, JsonTypeInfo<TValue>, CancellationToken)

GET 요청을 지정된 URI에 보내고 비동기 작업에서 응답 본문을 JSON으로 역직렬화한 결과 생성된 값을 반환합니다.

GetFromJsonAsync<TValue>(HttpClient, Uri, CancellationToken)

GET 요청을 지정된 URI에 보내고 비동기 작업에서 응답 본문을 JSON으로 역직렬화한 결과 생성된 값을 반환합니다.

PatchAsJsonAsync<TValue>(HttpClient, String, TValue, JsonSerializerOptions, CancellationToken)

요청 본문에서 JSON으로 직렬화된 를 value 포함하는 지정된 Uri에 PATCH 요청을 보냅니다.

PatchAsJsonAsync<TValue>(HttpClient, String, TValue, JsonTypeInfo<TValue>, CancellationToken)

요청 본문에서 JSON으로 직렬화된 를 value 포함하는 지정된 Uri에 PATCH 요청을 보냅니다.

PatchAsJsonAsync<TValue>(HttpClient, String, TValue, CancellationToken)

요청 본문에서 JSON으로 직렬화된 를 value 포함하는 지정된 Uri에 PATCH 요청을 보냅니다.

PatchAsJsonAsync<TValue>(HttpClient, Uri, TValue, JsonSerializerOptions, CancellationToken)

요청 본문에서 JSON으로 직렬화된 를 value 포함하는 지정된 Uri에 PATCH 요청을 보냅니다.

PatchAsJsonAsync<TValue>(HttpClient, Uri, TValue, JsonTypeInfo<TValue>, CancellationToken)

요청 본문에서 JSON으로 직렬화된 를 value 포함하는 지정된 Uri에 PATCH 요청을 보냅니다.

PatchAsJsonAsync<TValue>(HttpClient, Uri, TValue, CancellationToken)

요청 본문에서 JSON으로 직렬화된 를 value 포함하는 지정된 Uri에 PATCH 요청을 보냅니다.

PostAsJsonAsync<TValue>(HttpClient, String, TValue, JsonSerializerOptions, CancellationToken)

요청 본문에서 JSON으로 직렬화된 value를 포함하는 지정된 URI에 POST 요청을 보냅니다.

PostAsJsonAsync<TValue>(HttpClient, String, TValue, JsonTypeInfo<TValue>, CancellationToken)

요청 본문에서 JSON으로 직렬화된 value를 포함하는 지정된 URI에 POST 요청을 보냅니다.

PostAsJsonAsync<TValue>(HttpClient, String, TValue, CancellationToken)

요청 본문에서 JSON으로 직렬화된 value를 포함하는 지정된 URI에 POST 요청을 보냅니다.

PostAsJsonAsync<TValue>(HttpClient, Uri, TValue, JsonSerializerOptions, CancellationToken)

요청 본문에서 JSON으로 직렬화된 value를 포함하는 지정된 URI에 POST 요청을 보냅니다.

PostAsJsonAsync<TValue>(HttpClient, Uri, TValue, JsonTypeInfo<TValue>, CancellationToken)

요청 본문에서 JSON으로 직렬화된 value를 포함하는 지정된 URI에 POST 요청을 보냅니다.

PostAsJsonAsync<TValue>(HttpClient, Uri, TValue, CancellationToken)

요청 본문에서 JSON으로 직렬화된 value를 포함하는 지정된 URI에 POST 요청을 보냅니다.

PutAsJsonAsync<TValue>(HttpClient, String, TValue, JsonSerializerOptions, CancellationToken)

요청 본문에서 JSON으로 직렬화된 value를 포함하는 지정된 URI에 PUT 요청을 보냅니다.

PutAsJsonAsync<TValue>(HttpClient, String, TValue, JsonTypeInfo<TValue>, CancellationToken)

요청 본문에서 JSON으로 직렬화된 value를 포함하는 지정된 URI에 PUT 요청을 보냅니다.

PutAsJsonAsync<TValue>(HttpClient, String, TValue, CancellationToken)

요청 본문에서 JSON으로 직렬화된 value를 포함하는 지정된 URI에 PUT 요청을 보냅니다.

PutAsJsonAsync<TValue>(HttpClient, Uri, TValue, JsonSerializerOptions, CancellationToken)

요청 본문에서 JSON으로 직렬화된 value를 포함하는 지정된 URI에 PUT 요청을 보냅니다.

PutAsJsonAsync<TValue>(HttpClient, Uri, TValue, JsonTypeInfo<TValue>, CancellationToken)

요청 본문에서 JSON으로 직렬화된 value를 포함하는 지정된 URI에 PUT 요청을 보냅니다.

PutAsJsonAsync<TValue>(HttpClient, Uri, TValue, CancellationToken)

요청 본문에서 JSON으로 직렬화된 value를 포함하는 지정된 URI에 PUT 요청을 보냅니다.

적용 대상

추가 정보