HttpClient.SendAsync Metoda
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
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.
- HttpRequestException je vyvolán u všech použitelných verzí rozhraní .NET Framework.
- OperationCanceledException bez vnitřní výjimky je vyvolán u všech použitelných verzí .NET Core.
- OperationCanceledException, která vnořuje TimeoutException je vyvolán na .NET 5 a novějších verzích.
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.
- HttpRequestException je vyvolán u všech použitelných verzí rozhraní .NET Framework.
- OperationCanceledException bez vnitřní výjimky je vyvolán u všech použitelných verzí .NET Core.
- OperationCanceledException, která vnořuje TimeoutException je vyvolán na .NET 5 a novějších verzích.
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.
- HttpRequestException je vyvolán u všech použitelných verzí rozhraní .NET Framework.
- OperationCanceledException bez vnitřní výjimky je vyvolán u všech použitelných verzí .NET Core.
- OperationCanceledException, která vnořuje TimeoutException je vyvolán na .NET 5 a novějších verzích.
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.
- HttpRequestException je vyvolán u všech použitelných verzí rozhraní .NET Framework.
- OperationCanceledException bez vnitřní výjimky je vyvolán u všech použitelných verzí .NET Core.
- OperationCanceledException, která vnořuje TimeoutException je vyvolán na .NET 5 a novějších verzích.
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).