Sdílet prostřednictvím


HttpClient Konstruktory

Definice

Inicializuje novou instanci HttpClient třídy .

Přetížení

HttpClient()

Inicializuje novou instanci HttpClient třídy pomocí HttpClientHandler , který je uvolněn při odstranění této instance.

HttpClient(HttpMessageHandler)

Inicializuje novou instanci HttpClient třídy se zadanou obslužnou rutinou. Obslužná rutina je uvolněna, když je tato instance uvolněna.

HttpClient(HttpMessageHandler, Boolean)

Inicializuje novou instanci HttpClient třídy se zadanou obslužnou rutinou a určuje, zda má být tato obslužná rutina odstraněna při odstranění této instance.

Poznámky

HttpClient je určená k vytvoření instance jednou a k opakovanému použití po celou dobu životnosti aplikace. Instance třídy HttpClient pro každý požadavek vyčerpá počet soketů dostupných při velkém zatížení. Výsledkem budou chyby SocketException. Níže je příklad správného použití HttpClient.

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

    static GoodController()
    {
        HttpClient = new HttpClient();
    }
}
  Public Class GoodController
    Inherits ApiController

    Private Shared ReadOnly HttpClient As HttpClient

    Shared Sub New()
        HttpClient = New HttpClient()
    End Sub
End Class

HttpClient()

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

Inicializuje novou instanci HttpClient třídy pomocí HttpClientHandler , který je uvolněn při odstranění této instance.

public:
 HttpClient();
public HttpClient ();
Public Sub New ()

Poznámky

Použití tohoto konstruktoru je ekvivalentem volání konstruktoru HttpClient(new HttpClientHandler(), true) .

Platí pro

HttpClient(HttpMessageHandler)

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

Inicializuje novou instanci HttpClient třídy se zadanou obslužnou rutinou. Obslužná rutina je uvolněna, když je tato instance uvolněna.

public:
 HttpClient(System::Net::Http::HttpMessageHandler ^ handler);
public HttpClient (System.Net.Http.HttpMessageHandler handler);
new System.Net.Http.HttpClient : System.Net.Http.HttpMessageHandler -> System.Net.Http.HttpClient
Public Sub New (handler As HttpMessageHandler)

Parametry

handler
HttpMessageHandler

Zásobník obslužné rutiny HTTP, který se má použít k odesílání požadavků.

Výjimky

Hodnota handler je null.

Poznámky

Použití tohoto konstruktoru je ekvivalentem volání konstruktoru HttpClient(handler, true) .

Zadaná handler hodnota bude odstraněna voláním HttpClient.Dispose.

Platí pro

HttpClient(HttpMessageHandler, Boolean)

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

Inicializuje novou instanci HttpClient třídy se zadanou obslužnou rutinou a určuje, zda má být tato obslužná rutina odstraněna při odstranění této instance.

public:
 HttpClient(System::Net::Http::HttpMessageHandler ^ handler, bool disposeHandler);
public HttpClient (System.Net.Http.HttpMessageHandler handler, bool disposeHandler);
new System.Net.Http.HttpClient : System.Net.Http.HttpMessageHandler * bool -> System.Net.Http.HttpClient
Public Sub New (handler As HttpMessageHandler, disposeHandler As Boolean)

Parametry

handler
HttpMessageHandler

Zodpovídá HttpMessageHandler za zpracování zpráv odpovědí HTTP.

disposeHandler
Boolean

true Pokud vnitřní obslužná rutina by měla být odstraněna HttpClient.Dispose; false pokud máte v úmyslu znovu použít vnitřní obslužnou rutinu.

Výjimky

Hodnota handler je null.

Platí pro