HttpClient Конструкторы
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Инициализирует новый экземпляр класса HttpClient.
Перегрузки
HttpClient() |
Инициализирует новый экземпляр класса HttpClient, используя HttpClientHandler, который удаляется при удалении этого экземпляра. |
HttpClient(HttpMessageHandler) |
Инициализирует новый экземпляр класса HttpClient с указанным обработчиком. Обработчик удаляется при удалении этого экземпляра. |
HttpClient(HttpMessageHandler, Boolean) |
Инициализирует новый экземпляр класса HttpClient с предоставленным обработчиком и указывает, должен ли этот обработчик удаляться при удалении этого экземпляра. |
Комментарии
HttpClient предназначено для создания экземпляра один раз и повторного использования на протяжении всего срока действия приложения. Создание экземпляра класса HttpClient для каждого запроса приведет к исчерпанию количества сокетов, доступных при больших нагрузках. Это приведет к ошибкам SocketException. Ниже приведен пример правильного использования 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()
- Исходный код:
- HttpClient.cs
- Исходный код:
- HttpClient.cs
- Исходный код:
- HttpClient.cs
Инициализирует новый экземпляр класса HttpClient, используя HttpClientHandler, который удаляется при удалении этого экземпляра.
public:
HttpClient();
public HttpClient ();
Public Sub New ()
Комментарии
Использование этого конструктора эквивалентно вызову конструктора HttpClient(new HttpClientHandler(), true)
.
Применяется к
HttpClient(HttpMessageHandler)
- Исходный код:
- HttpClient.cs
- Исходный код:
- HttpClient.cs
- Исходный код:
- HttpClient.cs
Инициализирует новый экземпляр класса HttpClient с указанным обработчиком. Обработчик удаляется при удалении этого экземпляра.
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)
Параметры
- handler
- HttpMessageHandler
Стек обработчика HTTP-данных, используемый для отправки запросов.
Исключения
handler
является null
.
Комментарии
Использование этого конструктора эквивалентно вызову конструктора HttpClient(handler, true)
.
Указанный handler
объект будет удален путем вызова HttpClient.Dispose.
Применяется к
HttpClient(HttpMessageHandler, Boolean)
- Исходный код:
- HttpClient.cs
- Исходный код:
- HttpClient.cs
- Исходный код:
- HttpClient.cs
Инициализирует новый экземпляр класса HttpClient с предоставленным обработчиком и указывает, должен ли этот обработчик удаляться при удалении этого экземпляра.
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)
Параметры
- handler
- HttpMessageHandler
Компонент HttpMessageHandler, отвечающий за обработку сообщений ответов HTTP.
- disposeHandler
- Boolean
Значение true
, если внутренний обработчик должен быть удален с помощью HttpClient.Dispose. Значение false
, если планируется повторно использовать внутренний обработчик.
Исключения
Значение параметра handler
— null
.