System.Net.Http Пространство имен
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Предоставляет интерфейс программирования для современных приложений HTTP.
Классы
| Имя | Описание |
|---|---|
| ByteArrayContent |
Предоставляет содержимое HTTP на основе массива байтов. |
| DelegatingHandler |
Тип обработчиков HTTP, которые делегировать обработку сообщений HTTP-ответов другому обработчику, называемому внутренним обработчиком. |
| FormUrlEncodedContent |
Контейнер для кортежей name/value, закодированных с помощью типа MIME application/x-www-form-urlencoded MIME. |
| HttpClient |
Предоставляет класс для отправки HTTP-запросов и получения HTTP-ответов из ресурса, определяемого URI. |
| HttpClientFactoryExtensions |
Методы расширений для IHttpClientFactory. |
| HttpClientHandler |
Обработчик сообщений по умолчанию, используемый HttpClient в .NET Framework и .NET Core 2.0 и более ранних версий. |
| HttpContent |
Базовый класс, представляющий текст сущности HTTP и заголовки содержимого. |
| HttpDiagnosticsHttpRequestMessageExtensions |
Расширения для служебных программ телеметрии. |
| HttpIOException |
Исключение, которое возникает при возникновении ошибки при чтении ответа. |
| HttpMessageHandler |
Базовый тип обработчиков сообщений HTTP. |
| HttpMessageHandlerFactoryExtensions |
Методы расширений для IHttpMessageHandlerFactory. |
| HttpMessageInvoker |
Специальный класс, позволяющий приложениям вызывать SendAsync(HttpRequestMessage, CancellationToken) метод в цепочке обработчиков HTTP. |
| HttpMethod |
Вспомогательный класс для получения и сравнения стандартных методов HTTP и создания новых методов HTTP. |
| HttpProtocolException |
Исключение возникает при возникновении ошибки протокола HTTP/2 или HTTP/3. |
| HttpRequestException |
Базовый класс для исключений, создаваемых и HttpMessageHandler классамиHttpClient. |
| HttpRequestMessage |
Представляет сообщение HTTP-запроса. |
| HttpRequestOptions |
Представляет коллекцию параметров HTTP-запроса. |
| HttpResilienceHttpRequestMessageExtensions |
Расширения устойчивости для HttpRequestMessage. |
| HttpResponseMessage |
Представляет сообщение HTTP-ответа, включая код состояния и данные. |
| MessageProcessingHandler |
Базовый тип для обработчиков, которые выполняют только небольшую обработку запросов и /или ответных сообщений. |
| MultipartContent |
Предоставляет коллекцию объектов, сериализованных с помощью спецификации HttpContent типа контента multipart/* . |
| MultipartFormDataContent |
Предоставляет контейнер для содержимого, закодированного с помощью типа MIME с несколькими частями и формами. |
| ReadOnlyMemoryContent |
Предоставляет содержимое HTTP на ReadOnlyMemory<T>основе . |
| RtcRequestFactory |
Предоставляет интерфейс программирования для современных приложений HTTP. |
| SocketsHttpConnectionContext |
Представляет контекст, переданный экземпляру ConnectCallbackSocketsHttpHandler . . |
| SocketsHttpHandler |
Предоставляет обработчик сообщений по умолчанию, используемый HttpClient в .NET Core 2.1 и более поздних версий. |
| SocketsHttpPlaintextStreamFilterContext |
Представляет контекст, переданный в plaintextStreamFilter для экземпляра SocketsHttpHandler. |
| StreamContent |
Предоставляет содержимое HTTP на основе потока. |
| StringContent |
Предоставляет содержимое HTTP на основе строки. |
| WebRequestHandler |
Предоставляет функции для настольных компьютеров, недоступные для приложений Магазина Windows или других сред. |
| WinHttpHandler |
Обрабатывает сообщения на основе интерфейса WinHTTP Windows. Этот класс предназначен для использования в серверных средах. |
Структуры
| Имя | Описание |
|---|---|
| HttpRequestOptionsKey<TValue> |
Представляет ключ в коллекции параметров для HTTP-запроса. |
Интерфейсы
| Имя | Описание |
|---|---|
| IHttpClientFactory |
Абстракция фабрики для компонента, который может создавать HttpClient экземпляры с настраиваемой конфигурацией для заданного логического имени. |
| IHttpMessageHandlerFactory |
Абстракция фабрики для компонента, который может создавать HttpMessageHandler экземпляры с настраиваемой конфигурацией для заданного логического имени. |
Перечисления
| Имя | Описание |
|---|---|
| ClientCertificateOption |
Указывает, как предоставляются сертификаты клиента. |
| CookieUsePolicy |
Это перечисление позволяет управлять файлами cookie HTTP при взаимодействии с сервером. |
| HttpCompletionOption |
Указывает, следует ли считать HttpClient операции завершенными как только ответ будет доступен, либо после чтения всего сообщения ответа, включая содержимое. |
| HttpKeepAlivePingPolicy |
Указывает, когда кадр связи HTTP/2 отправляется в неактивное подключение. |
| HttpRequestError |
Определяет категории ошибок, представляющие причину HttpRequestException или HttpIOException. |
| HttpVersionPolicy |
Задает поведение для выбора и согласования версии HTTP для запроса. |
| WindowsProxyUsePolicy |
Это перечисление предоставляет доступные параметры прокси-сервера, используемые HttpClient при запуске в Windows. |
Делегаты
| Имя | Описание |
|---|---|
| HeaderEncodingSelector<TContext> |
Представляет метод, указывающий кодировку, используемую при интерпретации значений заголовков. |
Комментарии
Пространство System.Net.Http имен предназначено для предоставления следующих компонентов:
- Компоненты клиента HTTP, позволяющие пользователям использовать современные веб-службы по протоколу HTTP.
- Компоненты HTTP, которые можно использовать как клиентами, так и серверами (например, заголовки и сообщения HTTP). Это обеспечивает согласованную модель программирования на стороне клиента и сервера для современных веб-служб по протоколу HTTP.
Пространство System.Net.Http имен и связанное System.Net.Http.Headers пространство имен предоставляют следующий набор компонентов:
- HttpClient — Основной класс, используемый для отправки и получения запросов по протоколу HTTP.
- HttpRequestMessage и HttpResponseMessage — HTTP-сообщения, определенные в RFC 2616 IETF.
- HttpHeaders — заголовки HTTP, определенные в RFC 2616 IETF.
- HttpClientHandler — обработчики HTTP, ответственные за создание сообщений HTTP-ответов.
Существуют различные обработчики сообщений HTTP, которые можно использовать:
- DelegatingHandler — Класс, используемый для подключения обработчика к цепочке обработчика.
- HttpMessageHandler — Простой класс, производный от этого, поддерживает наиболее распространенные требования для большинства приложений.
- HttpClientHandler — Класс, работающий в нижней части цепочки обработчиков, который фактически обрабатывает операции транспорта HTTP.
Содержимое HTTP-сообщения соответствует тексту сущности, определенному в RFC 2616.
Для содержимого HTTP можно использовать следующие классы:
- ByteArrayContent — содержимое HTTP на основе массива байтов.
- FormUrlEncodedContent — HTTP-содержимое кортежей name/value, закодированных с помощью типа MIME application/x-www-form-urlencoded.
- MultipartContent — HTTP-содержимое, сериализованное с помощью спецификации типа контента multipart/*.
- MultipartFormDataContent — содержимое HTTP, закодированное с помощью типа MIME с несколькими частями или формами.
- StreamContent — содержимое HTTP на основе потока.
- StringContent — содержимое HTTP на основе строки.
Если приложение использует System.Net.Http пространства имен и System.Net.Http.Headers собирается скачать большие объемы данных (50 мегабайт или больше), то он должен передавать эти загрузки и не использовать буферизацию по умолчанию. Если вы используете буферизацию по умолчанию, использование памяти клиента будет очень большим, что может привести к значительно снижению производительности.