HttpClient Klasa

Definicja

Udostępnia klasę do wysyłania żądań HTTP i odbierania odpowiedzi HTTP z zasobu zidentyfikowanego przez identyfikator URI.

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
Dziedziczenie

Przykłady

// 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

W poprzednim przykładzie kodu użyto async Task Main() punktu wejścia. Ta funkcja wymaga języka C# 7.1 lub nowszego.

Uwagi

Wystąpienie klasy działa jako sesja HttpClient wysyłania żądań HTTP. Wystąpienie HttpClient to kolekcja ustawień zastosowanych do wszystkich żądań wykonywanych przez to wystąpienie. Ponadto każde HttpClient wystąpienie używa własnej puli połączeń, izolując żądania od żądań wykonywanych przez inne HttpClient wystąpienia.

Tworzenie wystąpienia

HttpClient jest przeznaczony do utworzenia wystąpienia raz i ponownego użycia przez cały czas trwania aplikacji. W programach .NET Core i .NET 5 lub nowszych pule HttpClient w wystąpieniu programu obsługi i ponownie używa połączenia między wieloma żądaniami. Jeśli utworzysz wystąpienie klasy HttpClient dla każdego żądania, liczba gniazd dostępnych pod dużym obciążeniem zostanie wyczerpana. To wyczerpanie spowoduje SocketException błędy.

Dodatkowe opcje można skonfigurować, przekazując "program obsługi", taki jak HttpClientHandler (lub SocketsHttpHandler w programie .NET Core 2.1 lub nowszym), jako część konstruktora. Właściwości połączenia w procedurze obsługi nie można zmienić po przesłaniu żądania, dlatego jednym z powodów utworzenia nowego wystąpienia klienta HttpClient byłoby zmiana właściwości połączenia. Jeśli różne żądania wymagają różnych ustawień, może to również prowadzić do tego, że aplikacja ma wiele HttpClient wystąpień, w których każde wystąpienie jest odpowiednio skonfigurowane, a następnie żądania są wystawiane na odpowiednim kliencie.

Klient HttpClient rozpoznaje wpisy DNS tylko po utworzeniu połączenia. Nie śledzi czasu wygaśnięcia (TTL) określonego przez serwer DNS. Jeśli wpisy DNS zmieniają się regularnie, co może się zdarzyć w niektórych scenariuszach kontenera, klient nie będzie przestrzegać tych aktualizacji. Aby rozwiązać ten problem, można ograniczyć okres istnienia połączenia, ustawiając SocketsHttpHandler.PooledConnectionLifetime właściwość , aby wyszukiwanie DNS było wymagane po zastąpieniu połączenia.

public class GoodController : ApiController
{
    private static readonly HttpClient httpClient;

    static GoodController()
    {
        var socketsHandler = new SocketsHttpHandler
        {
            PooledConnectionLifetime = TimeSpan.FromMinutes(2)
        };

        httpClient = new HttpClient(socketsHandler);
    }
}

Alternatywą dla tworzenia tylko jednego wystąpienia HttpClient jest również IHttpClientFactory zarządzanie wystąpieniami klienta HttpClient. Aby uzyskać więcej informacji, zobacz Wytyczne dotyczące używania obiektu HttpClient.

Wyprowadzenie

Klasa HttpClient ta działa również jako klasa bazowa dla bardziej szczegółowych klientów HTTP. Przykładem może być FacebookHttpClient, który udostępnia dodatkowe metody specyficzne dla usługi internetowej serwisu Facebook (na przykład GetFriends metody). Klasy pochodne nie powinny zastępować metod wirtualnych w klasie. Zamiast tego należy użyć przeciążenia konstruktora, które akceptuje HttpMessageHandler , aby skonfigurować dowolne przetwarzanie przed żądaniem lub po żądaniu.

Transporty

Jest HttpClient to interfejs API wysokiego poziomu, który opakowuje funkcje niższego poziomu dostępne na każdej platformie, na której działa.

Na każdej platformie HttpClient próbuje użyć najlepszego dostępnego transportu:

Host/środowisko uruchomieniowe Zaplecza
Windows/.NET Framework HttpWebRequest
Windows/Mono HttpWebRequest
Windows/UWP Natywna wersja WinHttpHandler systemu Windows (obsługa protokołu HTTP 2.0)
Windows/.NET Core 1.0-2.0 Natywna wersja WinHttpHandler systemu Windows (obsługa protokołu HTTP 2.0)
Android/Xamarin Wybrane w czasie kompilacji. Można użyć funkcji HttpWebRequest lub skonfigurować do używania natywnego systemu Android HttpURLConnection
iOS, tvOS, watchOS/Xamarin Wybrane w czasie kompilacji. Można użyć HttpWebRequest lub skonfigurować do korzystania z urządzeń NSUrlSession firmy Apple (z obsługą protokołu HTTP 2.0)
macOS/Xamarin Wybrane w czasie kompilacji. Można użyć HttpWebRequest lub skonfigurować do korzystania z urządzeń NSUrlSession firmy Apple (z obsługą protokołu HTTP 2.0)
macOS/Mono HttpWebRequest
macOS/.NET Core 1.0-2.0 libcurlTransport HTTP oparty na protokole HTTP (obsługa protokołu HTTP 2.0)
Linux/Mono HttpWebRequest
Linux/.NET Core 1.0-2.0 libcurlTransport HTTP oparty na protokole HTTP (obsługa protokołu HTTP 2.0)
.NET Core 2.1 lub nowszy System.Net.Http.SocketsHttpHandler

Użytkownicy mogą również skonfigurować określony transport przez HttpClient wywołanie konstruktora HttpClient , który przyjmuje element HttpMessageHandler.

&.NET Framework Mono

Domyślnie w systemach .NET Framework i Mono HttpWebRequest do wysyłania żądań do serwera. To zachowanie można zmodyfikować, określając inną procedurę obsługi w jednym z przeciążeń konstruktora za pomocą parametru HttpMessageHandler . Jeśli potrzebujesz funkcji, takich jak uwierzytelnianie lub buforowanie, możesz użyć WebRequestHandler polecenia w celu skonfigurowania ustawień i przekazania wystąpienia do konstruktora. Zwróconą procedurę obsługi można przekazać do przeciążenia konstruktora, które ma HttpMessageHandler parametr .

.NET Core

Począwszy od platformy .NET Core 2.1, klasa zamiast HttpClientHandler zapewnia implementację używaną przez klasy sieci HTTP wyższego poziomu, System.Net.Http.SocketsHttpHandler takie jak HttpClient. Korzystanie z SocketsHttpHandler ofert ma wiele zalet:

  • Znacząca poprawa wydajności w porównaniu z poprzednią implementacją.
  • Eliminacja zależności platformy, co upraszcza wdrażanie i obsługę. Na przykład libcurl nie jest już zależność od platformy .NET Core dla systemów macOS i .NET Core dla systemu Linux.
  • Spójne zachowanie na wszystkich platformach .NET.

Jeśli ta zmiana jest niepożądana, w systemie Windows można nadal używać WinHttpHandler , odwołując się do jego pakietu NuGet i przekazując go ręcznie do konstruktora HttpClient .

Konfigurowanie zachowania przy użyciu opcji konfiguracji środowiska uruchomieniowego

Niektóre aspekty HttpClientzachowania są dostosowywalne za pomocą opcji konfiguracji środowiska uruchomieniowego. Jednak zachowanie tych przełączników różni się w zależności od wersji platformy .NET. Na przykład w programie .NET Core 2.1 — 3.1 można skonfigurować, czy SocketsHttpHandler jest używany domyślnie, ale ta opcja nie jest już dostępna, począwszy od platformy .NET 5.0.

Buforowanie połączeń

HttpClient pule połączeń HTTP tam, gdzie to możliwe, i używa ich do więcej niż jednego żądania. Może to mieć znaczącą korzyść z wydajności, zwłaszcza w przypadku żądań HTTPS, ponieważ uzgadnianie połączenia jest wykonywane tylko raz.

Właściwości puli połączeń można skonfigurować na obiekcie HttpClientHandler lub SocketsHttpHandler przekazanym podczas budowy, w tym MaxConnectionsPerServer, PooledConnectionIdleTimeouti PooledConnectionLifetime.

Usunięcie wystąpienia HttpClient powoduje zamknięcie otwartych połączeń i anulowanie oczekujących żądań.

Uwaga

Jeśli jednocześnie wysyłasz żądania HTTP/1.1 do tego samego serwera, można utworzyć nowe połączenia. Nawet w przypadku ponownego HttpClient użycia wystąpienia, jeśli szybkość żądań jest wysoka lub istnieją jakiekolwiek ograniczenia zapory, które mogą wyczerpać dostępne gniazda z powodu domyślnych czasomierzy oczyszczania TCP. Aby ograniczyć liczbę połączeń współbieżnych, możesz ustawić MaxConnectionsPerServer właściwość . Domyślnie liczba współbieżnych połączeń HTTP/1.1 jest nieograniczona.

Buforowanie i okres istnienia żądania

Domyślnie metody HttpClient (z wyjątkiem GetStreamAsync) buforu odpowiedzi z serwera, odczytując całą treść odpowiedzi do pamięci przed zwróceniem wyniku asynchronicznego. Te żądania będą kontynuowane do momentu wystąpienia jednego z następujących elementów:

Zachowanie buforowania można zmienić dla poszczególnych żądań przy użyciu parametru dostępnego HttpCompletionOption w niektórych przeciążeniach metody. Ten argument może służyć do określenia, czy Task<TResult> element powinien zostać uznany za ukończony po odczytaniu tylko nagłówków odpowiedzi, czy po odczytaniu i buforowaniu zawartości odpowiedzi.

Jeśli aplikacja używająca HttpClient i powiązanych klas w System.Net.Http przestrzeni nazw zamierza pobierać duże ilości danych (co najmniej 50 megabajtów), aplikacja powinna przesyłać strumieniowo te pliki do pobrania i nie używać buforowania domyślnego. Jeśli używasz buforowania domyślnego, użycie pamięci klienta będzie bardzo duże, co może spowodować znaczne zmniejszenie wydajności.

Bezpieczeństwo wątkowe

Następujące metody są bezpieczne wątkami:

Serwerów proxy

Domyślnie klient HttpClient odczytuje konfigurację serwera proxy ze zmiennych środowiskowych lub ustawień użytkownika/systemu, w zależności od platformy. To zachowanie można zmienić, przekazując element WebProxy lub IWebProxy w kolejności pierwszeństwa:

  • Właściwość Proxy w programie HttpClientHandler przekazanym podczas konstruowania obiektu HttpClient
  • Właściwość statyczna DefaultProxy (wpływa na wszystkie wystąpienia)

Serwer proxy można wyłączyć przy użyciu polecenia UseProxy. Domyślną konfiguracją dla użytkowników systemu Windows jest próba wykrycia serwera proxy przy użyciu odnajdywania sieci, co może być powolne. W przypadku aplikacji o wysokiej przepływności, w których wiadomo, że serwer proxy nie jest wymagany, należy wyłączyć serwer proxy.

Ustawienia serwera proxy (na przykład Credentials) należy zmienić tylko przed wykonaniem pierwszego żądania przy użyciu klienta HttpClient. Zmiany wprowadzone po użyciu obiektu HttpClient po raz pierwszy mogą nie zostać odzwierciedlone w kolejnych żądaniach.

Limity czasu

Możesz użyć Timeout polecenia , aby ustawić domyślny limit czasu dla wszystkich żądań HTTP z wystąpienia klienta HttpClient. Limit czasu dotyczy tylko metod xxxAsync, które powodują zainicjowanie żądania/odpowiedzi. Jeśli zostanie osiągnięty limit czasu, Task<TResult> żądanie zostanie anulowane.

Możesz ustawić dodatkowe limity czasu, jeśli przekażesz SocketsHttpHandler wystąpienie podczas konstruowania obiektu HttpClient:

Właściwość Opis
ConnectTimeout Określa limit czasu, który jest używany, gdy żądanie wymaga utworzenia nowego połączenia TCP. Jeśli wystąpi przekroczenie limitu czasu, żądanie Task<TResult> zostanie anulowane.
PooledConnectionLifetime Określa limit czasu, który ma być używany dla każdego połączenia w puli połączeń. Jeśli połączenie jest bezczynne, połączenie zostanie natychmiast zamknięte; w przeciwnym razie połączenie jest zamykane na końcu bieżącego żądania.
PooledConnectionIdleTimeout Jeśli połączenie w puli połączeń jest bezczynne przez ten czas, połączenie zostanie zamknięte.
Expect100ContinueTimeout Jeśli żądanie ma nagłówek "Oczekiwano: 100-continue", opóźnia wysyłanie zawartości do momentu przekroczenia limitu czasu lub otrzymania odpowiedzi "100-continue".

Obiekt HttpClient rozpoznaje wpisy DNS tylko podczas tworzenia połączeń. Nie śledzi czasu wygaśnięcia (TTL) określonego przez serwer DNS. Jeśli wpisy DNS są regularnie zmieniane, co może się zdarzyć w niektórych scenariuszach kontenera, można użyć PooledConnectionLifetime , aby ograniczyć okres istnienia połączenia, aby wyszukiwanie DNS było wymagane podczas zastępowania połączenia.

Konstruktory

HttpClient()

Inicjuje HttpClient nowe wystąpienie klasy przy użyciu usuniętego HttpClientHandler wystąpienia, gdy to wystąpienie zostanie usunięte.

HttpClient(HttpMessageHandler)

Inicjuje HttpClient nowe wystąpienie klasy przy użyciu określonej procedury obsługi. Procedura obsługi jest usuwana po usunięciu tego wystąpienia.

HttpClient(HttpMessageHandler, Boolean)

Inicjuje nowe wystąpienie HttpClient klasy z podaną procedurą obsługi i określa, czy ta procedura obsługi powinna zostać usunięta po usunięciu tego wystąpienia.

Właściwości

BaseAddress

Pobiera lub ustawia podstawowy adres identyfikatora URI (Uniform Resource Identifier) zasobu internetowego używanego podczas wysyłania żądań.

DefaultProxy

Pobiera lub ustawia globalny serwer proxy HTTP.

DefaultRequestHeaders

Pobiera nagłówki, które powinny być wysyłane z każdym żądaniem.

DefaultRequestVersion

Pobiera lub ustawia domyślną wersję PROTOKOŁU HTTP używaną w kolejnych żądaniach wysyłanych przez to HttpClient wystąpienie.

DefaultVersionPolicy

Pobiera lub ustawia domyślne zasady wersji dla niejawnie utworzonych żądań w metodach wygody, na przykład GetAsync(String) i PostAsync(String, HttpContent).

MaxResponseContentBufferSize

Pobiera lub ustawia maksymalną liczbę bajtów do buforowania podczas odczytywania zawartości odpowiedzi.

Timeout

Pobiera lub ustawia przedział czasu oczekiwania przed upływem limitu czasu żądania.

Metody

CancelPendingRequests()

Anuluj wszystkie oczekujące żądania w tym wystąpieniu.

DeleteAsync(String)

Wyślij żądanie USUŃ do określonego identyfikatora Uri jako operację asynchroniczną.

DeleteAsync(String, CancellationToken)

Wyślij żądanie DELETE do określonego identyfikatora URI z tokenem anulowania jako operacją asynchroniczną.

DeleteAsync(Uri)

Wyślij żądanie USUŃ do określonego identyfikatora Uri jako operację asynchroniczną.

DeleteAsync(Uri, CancellationToken)

Wyślij żądanie DELETE do określonego identyfikatora URI z tokenem anulowania jako operacją asynchroniczną.

Dispose()

Zwalnia niezarządzane zasoby i usuwa zasoby zarządzane używane przez HttpMessageInvokerprogram .

(Odziedziczone po HttpMessageInvoker)
Dispose(Boolean)

Zwalnia niezarządzane zasoby używane przez HttpClient program i opcjonalnie usuwa zasoby zarządzane.

Equals(Object)

Określa, czy dany obiekt jest taki sam, jak bieżący obiekt.

(Odziedziczone po Object)
GetAsync(String)

Wyślij żądanie POBIERZ do określonego identyfikatora Uri jako operację asynchroniczną.

GetAsync(String, CancellationToken)

Wyślij żądanie GET do określonego identyfikatora URI z tokenem anulowania jako operacją asynchroniczną.

GetAsync(String, HttpCompletionOption)

Wyślij żądanie GET do określonego identyfikatora URI z opcją uzupełniania HTTP jako operację asynchroniczną.

GetAsync(String, HttpCompletionOption, CancellationToken)

Wyślij żądanie GET do określonego identyfikatora URI z opcją uzupełniania HTTP i tokenem anulowania jako operacją asynchroniczną.

GetAsync(Uri)

Wyślij żądanie POBIERZ do określonego identyfikatora Uri jako operację asynchroniczną.

GetAsync(Uri, CancellationToken)

Wyślij żądanie GET do określonego identyfikatora URI z tokenem anulowania jako operacją asynchroniczną.

GetAsync(Uri, HttpCompletionOption)

Wyślij żądanie GET do określonego identyfikatora URI z opcją uzupełniania HTTP jako operację asynchroniczną.

GetAsync(Uri, HttpCompletionOption, CancellationToken)

Wyślij żądanie GET do określonego identyfikatora URI z opcją uzupełniania HTTP i tokenem anulowania jako operacją asynchroniczną.

GetByteArrayAsync(String)

Wysyła żądanie GET do określonego identyfikatora URI i zwraca treść odpowiedzi jako tablicę bajtów w operacji asynchronicznej.

GetByteArrayAsync(String, CancellationToken)

Wysyła żądanie GET do określonego identyfikatora URI i zwraca treść odpowiedzi jako tablicę bajtów w operacji asynchronicznej.

GetByteArrayAsync(Uri)

Wyślij żądanie POBIERZ do określonego identyfikatora Uri i zwróć treść odpowiedzi jako tablicę bajtów w operacji asynchronicznej.

GetByteArrayAsync(Uri, CancellationToken)

Wyślij żądanie POBIERZ do określonego identyfikatora Uri i zwróć treść odpowiedzi jako tablicę bajtów w operacji asynchronicznej.

GetHashCode()

Służy jako domyślna funkcja skrótu.

(Odziedziczone po Object)
GetStreamAsync(String)

Wyślij żądanie POBIERZ do określonego identyfikatora Uri i zwróć treść odpowiedzi jako strumień w operacji asynchronicznej.

GetStreamAsync(String, CancellationToken)

Wyślij żądanie POBIERZ do określonego identyfikatora Uri i zwróć treść odpowiedzi jako strumień w operacji asynchronicznej.

GetStreamAsync(Uri)

Wyślij żądanie POBIERZ do określonego identyfikatora Uri i zwróć treść odpowiedzi jako strumień w operacji asynchronicznej.

GetStreamAsync(Uri, CancellationToken)

Wyślij żądanie POBIERZ do określonego identyfikatora Uri i zwróć treść odpowiedzi jako strumień w operacji asynchronicznej.

GetStringAsync(String)

Wyślij żądanie POBIERZ do określonego identyfikatora Uri i zwróć treść odpowiedzi jako ciąg w operacji asynchronicznej.

GetStringAsync(String, CancellationToken)

Wyślij żądanie POBIERZ do określonego identyfikatora Uri i zwróć treść odpowiedzi jako ciąg w operacji asynchronicznej.

GetStringAsync(Uri)

Wyślij żądanie POBIERZ do określonego identyfikatora Uri i zwróć treść odpowiedzi jako ciąg w operacji asynchronicznej.

GetStringAsync(Uri, CancellationToken)

Wyślij żądanie POBIERZ do określonego identyfikatora Uri i zwróć treść odpowiedzi jako ciąg w operacji asynchronicznej.

GetType()

Type Pobiera wartość bieżącego wystąpienia.

(Odziedziczone po Object)
MemberwiseClone()

Tworzy płytkią kopię bieżącego Objectelementu .

(Odziedziczone po Object)
PatchAsync(String, HttpContent)

Wysyła żądanie PATCH do identyfikatora URI wyznaczonego jako ciąg jako operacja asynchroniczna.

PatchAsync(String, HttpContent, CancellationToken)

Wysyła żądanie PATCH z tokenem anulowania do identyfikatora URI reprezentowanego jako ciąg jako operacja asynchroniczna.

PatchAsync(Uri, HttpContent)

Wysyła żądanie PATCH jako operację asynchroniczną.

PatchAsync(Uri, HttpContent, CancellationToken)

Wysyła żądanie PATCH z tokenem anulowania jako operacją asynchroniczną.

PostAsync(String, HttpContent)

Wyślij żądanie WYŚLIJ do określonego identyfikatora Uri jako operację asynchroniczną.

PostAsync(String, HttpContent, CancellationToken)

Wyślij żądanie POST z tokenem anulowania jako operacją asynchroniczną.

PostAsync(Uri, HttpContent)

Wyślij żądanie WYŚLIJ do określonego identyfikatora Uri jako operację asynchroniczną.

PostAsync(Uri, HttpContent, CancellationToken)

Wyślij żądanie POST z tokenem anulowania jako operacją asynchroniczną.

PutAsync(String, HttpContent)

Wyślij żądanie UMIEŚĆ do określonego identyfikatora Uri jako operację asynchroniczną.

PutAsync(String, HttpContent, CancellationToken)

Wyślij żądanie PUT z tokenem anulowania jako operację asynchroniczną.

PutAsync(Uri, HttpContent)

Wyślij żądanie UMIEŚĆ do określonego identyfikatora Uri jako operację asynchroniczną.

PutAsync(Uri, HttpContent, CancellationToken)

Wyślij żądanie PUT z tokenem anulowania jako operację asynchroniczną.

Send(HttpRequestMessage)

Wysyła żądanie HTTP z określonym żądaniem.

Send(HttpRequestMessage, CancellationToken)

Wysyła żądanie HTTP z określonym żądaniem i tokenem anulowania.

Send(HttpRequestMessage, CancellationToken)

Wysyła żądanie HTTP z określonym żądaniem i tokenem anulowania.

(Odziedziczone po HttpMessageInvoker)
Send(HttpRequestMessage, HttpCompletionOption)

Wysyła żądanie HTTP.

Send(HttpRequestMessage, HttpCompletionOption, CancellationToken)

Wysyła żądanie HTTP z określonym żądaniem, opcją ukończenia i tokenem anulowania.

SendAsync(HttpRequestMessage)

Wyślij żądanie HTTP jako operację asynchroniczną.

SendAsync(HttpRequestMessage, CancellationToken)

Wyślij żądanie HTTP jako operację asynchroniczną.

SendAsync(HttpRequestMessage, HttpCompletionOption)

Wyślij żądanie HTTP jako operację asynchroniczną.

SendAsync(HttpRequestMessage, HttpCompletionOption, CancellationToken)

Wyślij żądanie HTTP jako operację asynchroniczną.

ToString()

Zwraca ciąg reprezentujący bieżący obiekt.

(Odziedziczone po Object)

Metody rozszerzania

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

Wysyła żądanie DELETE do określonego identyfikatora URI i zwraca wartość, która wynika z deserializacji treści odpowiedzi jako JSON w operacji asynchronicznej.

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

Wysyła żądanie DELETE do określonego identyfikatora URI i zwraca wartość, która wynika z deserializacji treści odpowiedzi jako JSON w operacji asynchronicznej.

DeleteFromJsonAsync(HttpClient, String, Type, CancellationToken)

Wysyła żądanie DELETE do określonego identyfikatora URI i zwraca wartość, która wynika z deserializacji treści odpowiedzi jako JSON w operacji asynchronicznej.

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

Wysyła żądanie DELETE do określonego identyfikatora URI i zwraca wartość, która wynika z deserializacji treści odpowiedzi jako JSON w operacji asynchronicznej.

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

Wysyła żądanie DELETE do określonego identyfikatora URI i zwraca wartość, która wynika z deserializacji treści odpowiedzi jako JSON w operacji asynchronicznej.

DeleteFromJsonAsync(HttpClient, Uri, Type, CancellationToken)

Wysyła żądanie DELETE do określonego identyfikatora URI i zwraca wartość, która wynika z deserializacji treści odpowiedzi jako JSON w operacji asynchronicznej.

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

Wysyła żądanie DELETE do określonego identyfikatora URI i zwraca wartość, która wynika z deserializacji treści odpowiedzi jako JSON w operacji asynchronicznej.

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

Wysyła żądanie DELETE do określonego identyfikatora URI i zwraca wartość, która wynika z deserializacji treści odpowiedzi jako JSON w operacji asynchronicznej.

DeleteFromJsonAsync<TValue>(HttpClient, String, CancellationToken)

Wysyła żądanie DELETE do określonego identyfikatora URI i zwraca wartość, która wynika z deserializacji treści odpowiedzi jako JSON w operacji asynchronicznej.

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

Wysyła żądanie DELETE do określonego identyfikatora URI i zwraca wartość, która wynika z deserializacji treści odpowiedzi jako JSON w operacji asynchronicznej.

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

Wysyła żądanie DELETE do określonego identyfikatora URI i zwraca wartość, która wynika z deserializacji treści odpowiedzi jako JSON w operacji asynchronicznej.

DeleteFromJsonAsync<TValue>(HttpClient, Uri, CancellationToken)

Wysyła żądanie DELETE do określonego identyfikatora URI i zwraca wartość, która wynika z deserializacji treści odpowiedzi jako JSON w operacji asynchronicznej.

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

HTTP GET Wysyła żądanie do określonej wartości requestUri i zwraca wartość, która wynika z deserializacji treści odpowiedzi jako JSON w operacji asynchronicznego wyliczania.

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

HTTP GETWysyła żądanie do określonej wartości requestUri i zwraca wartość, która wynika z deserializacji treści odpowiedzi jako JSON w operacji asynchronicznego wyliczania.

GetFromJsonAsAsyncEnumerable<TValue>(HttpClient, String, CancellationToken)

HTTP GETWysyła żądanie do określonej wartości requestUri i zwraca wartość, która wynika z deserializacji treści odpowiedzi jako JSON w operacji asynchronicznego wyliczania.

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

HTTP GETWysyła żądanie do określonej wartości requestUri i zwraca wartość, która wynika z deserializacji treści odpowiedzi jako JSON w operacji asynchronicznego wyliczania.

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

HTTP GETWysyła żądanie do określonej wartości requestUri i zwraca wartość, która wynika z deserializacji treści odpowiedzi jako JSON w operacji asynchronicznego wyliczania.

GetFromJsonAsAsyncEnumerable<TValue>(HttpClient, Uri, CancellationToken)

HTTP GETWysyła żądanie do określonej wartości requestUri i zwraca wartość, która wynika z deserializacji treści odpowiedzi jako JSON w operacji asynchronicznego wyliczania.

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

Wysyła żądanie GET do określonego identyfikatora URI i zwraca wartość, która wynika z deserializacji treści odpowiedzi jako JSON w operacji asynchronicznej.

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

Wysyła żądanie GET do określonego identyfikatora URI i zwraca wartość, która wynika z deserializacji treści odpowiedzi jako JSON w operacji asynchronicznej.

GetFromJsonAsync(HttpClient, String, Type, CancellationToken)

Wysyła żądanie GET do określonego identyfikatora URI i zwraca wartość, która wynika z deserializacji treści odpowiedzi jako JSON w operacji asynchronicznej.

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

Wysyła żądanie GET do określonego identyfikatora URI i zwraca wartość, która wynika z deserializacji treści odpowiedzi jako JSON w operacji asynchronicznej.

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

Wysyła żądanie GET do określonego identyfikatora URI i zwraca wartość, która wynika z deserializacji treści odpowiedzi jako JSON w operacji asynchronicznej.

GetFromJsonAsync(HttpClient, Uri, Type, CancellationToken)

Wysyła żądanie GET do określonego identyfikatora URI i zwraca wartość, która wynika z deserializacji treści odpowiedzi jako JSON w operacji asynchronicznej.

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

Wysyła żądanie GET do określonego identyfikatora URI i zwraca wartość, która wynika z deserializacji treści odpowiedzi jako JSON w operacji asynchronicznej.

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

Wysyła żądanie GET do określonego identyfikatora URI i zwraca wartość, która wynika z deserializacji treści odpowiedzi jako JSON w operacji asynchronicznej.

GetFromJsonAsync<TValue>(HttpClient, String, CancellationToken)

Wysyła żądanie GET do określonego identyfikatora URI i zwraca wartość, która wynika z deserializacji treści odpowiedzi jako JSON w operacji asynchronicznej.

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

Wysyła żądanie GET do określonego identyfikatora URI i zwraca wartość, która wynika z deserializacji treści odpowiedzi jako JSON w operacji asynchronicznej.

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

Wysyła żądanie GET do określonego identyfikatora URI i zwraca wartość, która wynika z deserializacji treści odpowiedzi jako JSON w operacji asynchronicznej.

GetFromJsonAsync<TValue>(HttpClient, Uri, CancellationToken)

Wysyła żądanie GET do określonego identyfikatora URI i zwraca wartość, która wynika z deserializacji treści odpowiedzi jako JSON w operacji asynchronicznej.

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

Wysyła żądanie PATCH do określonego identyfikatora URI zawierającego value serializowany kod JSON w treści żądania.

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

Wysyła żądanie PATCH do określonego identyfikatora URI zawierającego value serializowany kod JSON w treści żądania.

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

Wysyła żądanie PATCH do określonego identyfikatora URI zawierającego value serializowany kod JSON w treści żądania.

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

Wysyła żądanie PATCH do określonego identyfikatora URI zawierającego value serializowany kod JSON w treści żądania.

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

Wysyła żądanie PATCH do określonego identyfikatora URI zawierającego value serializowany kod JSON w treści żądania.

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

Wysyła żądanie PATCH do określonego identyfikatora URI zawierającego value serializowany kod JSON w treści żądania.

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

Wysyła żądanie POST do określonego identyfikatora URI zawierającego value serializowany kod JSON w treści żądania.

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

Wysyła żądanie POST do określonego identyfikatora URI zawierającego value serializowany kod JSON w treści żądania.

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

Wysyła żądanie POST do określonego identyfikatora URI zawierającego value serializowany kod JSON w treści żądania.

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

Wysyła żądanie POST do określonego identyfikatora URI zawierającego value serializowany kod JSON w treści żądania.

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

Wysyła żądanie POST do określonego identyfikatora URI zawierającego value serializowany kod JSON w treści żądania.

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

Wysyła żądanie POST do określonego identyfikatora URI zawierającego value serializowany kod JSON w treści żądania.

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

Wyślij żądanie PUT do określonego identyfikatora URI zawierającego value serializowany kod JSON w treści żądania.

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

Wyślij żądanie PUT do określonego identyfikatora URI zawierającego value serializowany kod JSON w treści żądania.

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

Wyślij żądanie PUT do określonego identyfikatora URI zawierającego value serializowany kod JSON w treści żądania.

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

Wyślij żądanie PUT do określonego identyfikatora URI zawierającego value serializowany kod JSON w treści żądania.

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

Wyślij żądanie PUT do określonego identyfikatora URI zawierającego value serializowany kod JSON w treści żądania.

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

Wyślij żądanie PUT do określonego identyfikatora URI zawierającego value serializowany kod JSON w treści żądania.

Dotyczy

Zobacz też