HttpClient.SendAsync Metoda

Definice

Odešle požadavek HTTP jako asynchronní operaci.

Přetížení

Name Description
SendAsync(HttpRequestMessage, HttpCompletionOption, CancellationToken)

Odešle požadavek HTTP jako asynchronní operaci.

SendAsync(HttpRequestMessage)

Odešle požadavek HTTP jako asynchronní operaci.

SendAsync(HttpRequestMessage, HttpCompletionOption)

Odešle požadavek HTTP jako asynchronní operaci.

SendAsync(HttpRequestMessage, CancellationToken)

Odešle požadavek HTTP jako asynchronní operaci.

Poznámky

Tato operace neblokuje.

SendAsync(HttpRequestMessage, HttpCompletionOption, CancellationToken)

Zdroj:
HttpClient.cs
Zdroj:
HttpClient.cs
Zdroj:
HttpClient.cs
Zdroj:
HttpClient.cs
Zdroj:
HttpClient.cs

Odešle požadavek HTTP jako asynchronní operaci.

public:
 System::Threading::Tasks::Task<System::Net::Http::HttpResponseMessage ^> ^ SendAsync(System::Net::Http::HttpRequestMessage ^ request, System::Net::Http::HttpCompletionOption completionOption, System::Threading::CancellationToken cancellationToken);
public System.Threading.Tasks.Task<System.Net.Http.HttpResponseMessage> SendAsync(System.Net.Http.HttpRequestMessage request, System.Net.Http.HttpCompletionOption completionOption, System.Threading.CancellationToken cancellationToken);
override this.SendAsync : System.Net.Http.HttpRequestMessage * System.Net.Http.HttpCompletionOption * System.Threading.CancellationToken -> System.Threading.Tasks.Task<System.Net.Http.HttpResponseMessage>
Public Function SendAsync (request As HttpRequestMessage, completionOption As HttpCompletionOption, cancellationToken As CancellationToken) As Task(Of HttpResponseMessage)

Parametry

request
HttpRequestMessage

Zpráva požadavku HTTP, která se má odeslat.

completionOption
HttpCompletionOption

Po dokončení operace (jakmile bude odpověď k dispozici nebo po přečtení celého obsahu odpovědi).

cancellationToken
CancellationToken

Token zrušení pro zrušení operace.

Návraty

Objekt úkolu představující asynchronní operaci.

Výjimky

To request je null.

Instance již odeslala HttpClient zprávu požadavku.

Požadavek se nepovedl kvůli problému se získáním platné odpovědi HTTP, jako je selhání síťového připojení, selhání DNS, chyba ověření certifikátu serveru nebo neplatná odpověď serveru. Na .NET 8 a novějších verzích je důvod označen HttpRequestError

nebo

.NET Framework: Vypršel časový limit požadavku.

Token zrušení byl zrušen. Tato výjimka je uložena do vrácené úlohy.

nebo

.NET Core a .NET 5 a novějších verzích: Požadavek selhal kvůli vypršení časového limitu.

Poznámky

Tato operace neblokuje. V závislosti na hodnotě parametru completionOption se vrácený Task<TResult> objekt dokončí, jakmile bude odpověď k dispozici, nebo se přečte celá odpověď včetně obsahu.

Note

V případě časového limitu se u různých implementací .NET vyvolá různé výjimky.

Tato metoda ukládá do úlohy všechny výjimky bez použití, které může vyvolat synchronní protějšek metody. Pokud je výjimka uložena do vrácené úlohy, tato výjimka bude vyvolána, když je úkol očekáván. Výjimky použití, například ArgumentException, jsou stále vyvolány synchronně. V případě uložených výjimek se podívejte na výjimky vyvolané Send(HttpRequestMessage, HttpCompletionOption).

Platí pro

SendAsync(HttpRequestMessage)

Zdroj:
HttpClient.cs
Zdroj:
HttpClient.cs
Zdroj:
HttpClient.cs
Zdroj:
HttpClient.cs
Zdroj:
HttpClient.cs

Odešle požadavek HTTP jako asynchronní operaci.

public:
 System::Threading::Tasks::Task<System::Net::Http::HttpResponseMessage ^> ^ SendAsync(System::Net::Http::HttpRequestMessage ^ request);
public System.Threading.Tasks.Task<System.Net.Http.HttpResponseMessage> SendAsync(System.Net.Http.HttpRequestMessage request);
override this.SendAsync : System.Net.Http.HttpRequestMessage -> System.Threading.Tasks.Task<System.Net.Http.HttpResponseMessage>
Public Function SendAsync (request As HttpRequestMessage) As Task(Of HttpResponseMessage)

Parametry

request
HttpRequestMessage

Zpráva požadavku HTTP, která se má odeslat.

Návraty

Objekt úkolu představující asynchronní operaci.

Výjimky

To request je null.

Instance již odeslala HttpClient zprávu požadavku.

Požadavek se nepovedl kvůli problému se získáním platné odpovědi HTTP, jako je selhání síťového připojení, selhání DNS, chyba ověření certifikátu serveru nebo neplatná odpověď serveru. Na .NET 8 a novějších verzích je důvod označen HttpRequestError

nebo

pouze .NET Framework: Vypršel časový limit požadavku.

.NET Core a .NET 5 a novějších verzích: Požadavek selhal kvůli vypršení časového limitu.

Poznámky

Tato operace neblokuje. Vrácený Task<TResult> objekt se dokončí, jakmile se přečte celá odpověď včetně obsahu. Chování je stejné jako v případě, že ResponseContentRead bylo explicitně zadáno.

Note

V případě časového limitu se u různých implementací .NET vyvolá různé výjimky.

Tato metoda ukládá do úlohy všechny výjimky bez použití, které může vyvolat synchronní protějšek metody. Pokud je výjimka uložena do vrácené úlohy, tato výjimka bude vyvolána, když je úkol očekáván. Výjimky použití, například ArgumentException, jsou stále vyvolány synchronně. V případě uložených výjimek se podívejte na výjimky vyvolané Send(HttpRequestMessage).

Platí pro

SendAsync(HttpRequestMessage, HttpCompletionOption)

Zdroj:
HttpClient.cs
Zdroj:
HttpClient.cs
Zdroj:
HttpClient.cs
Zdroj:
HttpClient.cs
Zdroj:
HttpClient.cs

Odešle požadavek HTTP jako asynchronní operaci.

public:
 System::Threading::Tasks::Task<System::Net::Http::HttpResponseMessage ^> ^ SendAsync(System::Net::Http::HttpRequestMessage ^ request, System::Net::Http::HttpCompletionOption completionOption);
public System.Threading.Tasks.Task<System.Net.Http.HttpResponseMessage> SendAsync(System.Net.Http.HttpRequestMessage request, System.Net.Http.HttpCompletionOption completionOption);
override this.SendAsync : System.Net.Http.HttpRequestMessage * System.Net.Http.HttpCompletionOption -> System.Threading.Tasks.Task<System.Net.Http.HttpResponseMessage>
Public Function SendAsync (request As HttpRequestMessage, completionOption As HttpCompletionOption) As Task(Of HttpResponseMessage)

Parametry

request
HttpRequestMessage

Zpráva požadavku HTTP, která se má odeslat.

completionOption
HttpCompletionOption

Po dokončení operace (jakmile bude odpověď k dispozici nebo po přečtení celého obsahu odpovědi).

Návraty

Objekt úkolu představující asynchronní operaci.

Výjimky

To request je null.

Instance již odeslala HttpClient zprávu požadavku.

Požadavek se nepovedl kvůli problému se získáním platné odpovědi HTTP, jako je selhání síťového připojení, selhání DNS, chyba ověření certifikátu serveru nebo neplatná odpověď serveru. Na .NET 8 a novějších verzích je důvod označen HttpRequestError

nebo

pouze .NET Framework: Vypršel časový limit požadavku.

.NET Core a .NET 5 a novějších verzích: Požadavek selhal kvůli vypršení časového limitu.

Poznámky

Tato operace neblokuje. V závislosti na hodnotě parametru completionOption se vrácený Task<TResult> objekt dokončí, jakmile bude odpověď k dispozici, nebo se přečte celá odpověď včetně obsahu.

Note

V případě časového limitu se u různých implementací .NET vyvolá různé výjimky.

Tato metoda ukládá do úlohy všechny výjimky bez použití, které může vyvolat synchronní protějšek metody. Pokud je výjimka uložena do vrácené úlohy, tato výjimka bude vyvolána, když je úkol očekáván. Výjimky použití, například ArgumentException, jsou stále vyvolány synchronně. V případě uložených výjimek se podívejte na výjimky vyvolané Send(HttpRequestMessage, HttpCompletionOption).

Platí pro

SendAsync(HttpRequestMessage, CancellationToken)

Zdroj:
HttpClient.cs
Zdroj:
HttpClient.cs
Zdroj:
HttpClient.cs
Zdroj:
HttpClient.cs
Zdroj:
HttpClient.cs

Odešle požadavek HTTP jako asynchronní operaci.

public:
 override System::Threading::Tasks::Task<System::Net::Http::HttpResponseMessage ^> ^ SendAsync(System::Net::Http::HttpRequestMessage ^ request, System::Threading::CancellationToken cancellationToken);
public override System.Threading.Tasks.Task<System.Net.Http.HttpResponseMessage> SendAsync(System.Net.Http.HttpRequestMessage request, System.Threading.CancellationToken cancellationToken);
override this.SendAsync : System.Net.Http.HttpRequestMessage * System.Threading.CancellationToken -> System.Threading.Tasks.Task<System.Net.Http.HttpResponseMessage>
Public Overrides Function SendAsync (request As HttpRequestMessage, cancellationToken As CancellationToken) As Task(Of HttpResponseMessage)

Parametry

request
HttpRequestMessage

Zpráva požadavku HTTP, která se má odeslat.

cancellationToken
CancellationToken

Token zrušení pro zrušení operace.

Návraty

Objekt úkolu představující asynchronní operaci.

Výjimky

To request je null.

Instance již odeslala HttpClient zprávu požadavku.

Požadavek se nepovedl kvůli problému se získáním platné odpovědi HTTP, jako je selhání síťového připojení, selhání DNS, chyba ověření certifikátu serveru nebo neplatná odpověď serveru. Na .NET 8 a novějších verzích je důvod označen HttpRequestError

nebo

pouze .NET Framework: Vypršel časový limit požadavku.

Token zrušení byl zrušen. Tato výjimka je uložena do vrácené úlohy.

nebo

.NET Core a .NET 5 a novějších verzích: Požadavek selhal kvůli vypršení časového limitu.

Poznámky

Tato operace neblokuje. Vrácený Task<TResult> objekt se dokončí, jakmile se přečte celá odpověď včetně obsahu. Chování je stejné jako v případě, že ResponseContentRead bylo explicitně zadáno.

Note

V případě časového limitu se u různých implementací .NET vyvolá různé výjimky.

Tato metoda ukládá do úlohy všechny výjimky bez použití, které může vyvolat synchronní protějšek metody. Pokud je výjimka uložena do vrácené úlohy, tato výjimka bude vyvolána, když je úkol očekáván. Výjimky použití, například ArgumentException, jsou stále vyvolány synchronně. V případě uložených výjimek se podívejte na výjimky vyvolané Send(HttpRequestMessage).

Platí pro