System.Net.Http Przestrzeń nazw

Zapewnia interfejs programowania dla nowoczesnych aplikacji HTTP. Provides a programming interface for modern HTTP applications.

Klasy

ByteArrayContent

Udostępnia zawartość HTTP na podstawie tablicy bajtów.Provides HTTP content based on a byte array.

CFNetworkHandler
DelegatingHandler

Typ obsługi protokołu HTTP, który delegatuje przetwarzanie komunikatów odpowiedzi HTTP do innej procedury obsługi, nazywanej wewnętrzną obsługą.A type for HTTP handlers that delegate the processing of HTTP response messages to another handler, called the inner handler.

FormUrlEncodedContent

Kontener dla krotek nazwa/wartość zakodowany przy użyciu typu MIME application/x-www-form-urlencoded.A container for name/value tuples encoded using application/x-www-form-urlencoded MIME type.

HttpClient

Udostępnia klasę do wysyłania żądań HTTP i otrzymywania odpowiedzi HTTP z zasobu identyfikowanego za pomocą identyfikatora URI.Provides a class for sending HTTP requests and receiving HTTP responses from a resource identified by a URI.

HttpClientFactoryExtensions

Metody rozszerzeń dla IHttpClientFactory .Extensions methods for IHttpClientFactory.

HttpClientHandler

Domyślna procedura obsługi komunikatów używana przez program HttpClient w .NET Framework i .NET Core 2,0 i starszych.The default message handler used by HttpClient in .NET Framework and .NET Core 2.0 and earlier.

HttpContent

Klasa bazowa reprezentująca treść jednostki HTTP i nagłówki zawartości.A base class representing an HTTP entity body and content headers.

HttpMessageHandler

Typ podstawowy dla programów obsługi komunikatów HTTP.A base type for HTTP message handlers.

HttpMessageHandlerFactoryExtensions

Metody rozszerzeń dla IHttpMessageHandlerFactory .Extensions methods for IHttpMessageHandlerFactory.

HttpMessageInvoker

Klasa specjalistyczna, która umożliwia aplikacjom wywoływanie SendAsync(HttpRequestMessage, CancellationToken) metody w łańcuchu obsługi protokołu HTTP.A specialty class that allows applications to call the SendAsync(HttpRequestMessage, CancellationToken) method on an HTTP handler chain.

HttpMethod

Klasa pomocnika służąca do pobierania i porównywania standardowych metod HTTP oraz do tworzenia nowych metod HTTP.A helper class for retrieving and comparing standard HTTP methods and for creating new HTTP methods.

HttpRequestException

Klasa bazowa dla wyjątków zgłoszonych przez HttpClient klasy i HttpMessageHandler .A base class for exceptions thrown by the HttpClient and HttpMessageHandler classes.

HttpRequestMessage

Reprezentuje komunikat żądania HTTP.Represents a HTTP request message.

HttpRequestOptions
HttpResponseMessage

Reprezentuje komunikat odpowiedzi HTTP, w tym kod stanu i dane.Represents a HTTP response message including the status code and data.

MessageProcessingHandler

Typ podstawowy dla programów obsługi, które wykonują tylko niewielkie przetwarzanie komunikatów żądań i/lub odpowiedzi.A base type for handlers which only do some small processing of request and/or response messages.

MultipartContent

Zawiera kolekcję HttpContent obiektów, które uzyskują serializacji przy użyciu wieloczęściowego/* specyfikacji typu zawartości.Provides a collection of HttpContent objects that get serialized using the multipart/* content type specification.

MultipartFormDataContent

Zawiera kontener dla zawartości kodowanej przy użyciu wieloczęściowego/formularza-danych typu MIME.Provides a container for content encoded using multipart/form-data MIME type.

NSUrlSessionHandler

Domyślna procedura obsługi komunikatów używana przez  HttpClient   platformy firmy Apple przy użyciu stosu Xamarin (iOS, MacOS, systemu watchOS, systemu tvOS)The default message handler used by HttpClient on Apple platforms using the Xamarin stack (iOS, macOS, watchOS, tvOS)

ReadOnlyMemoryContent

Udostępnia zawartość HTTP na podstawie ReadOnlyMemory<T> .Provides HTTP content based on a ReadOnlyMemory<T>.

RtcRequestFactory
SocketsHttpConnectionContext

Reprezentuje kontekst przesłany do ConnectCallback SocketsHttpHandler wystąpienia.Represents the context passed to the ConnectCallback for a SocketsHttpHandler instance. ..

SocketsHttpHandler

Udostępnia domyślną procedurę obsługi komunikatów używaną HttpClient w programie .NET Core 2,1 i nowszych.Provides the default message handler used by HttpClient in .NET Core 2.1 and later.

SocketsHttpPlaintextStreamFilterContext
StreamContent

Udostępnia zawartość HTTP na podstawie strumienia.Provides HTTP content based on a stream.

StringContent

Udostępnia zawartość HTTP na podstawie ciągu.Provides HTTP content based on a string.

WebRequestHandler

Program udostępnia funkcje specyficzne dla pulpitu, które nie są dostępne dla aplikacji ze sklepu Windows lub innych środowisk.Provides desktop-specific features not available to Windows Store apps or other environments.

WinHttpHandler

Obsługuje komunikaty na podstawie interfejsu WinHTTP systemu Windows.Handles messages based on the WinHTTP interface of Windows. Ta klasa jest przeznaczona do użycia w środowiskach serwerów.This class is intended for use in server environments.

Struktury

HttpRequestOptionsKey<TValue>

Interfejsy

IHttpClientFactory

Abstrakcja fabryki dla składnika, który może tworzyć HttpClient wystąpienia z konfiguracją niestandardową dla danej nazwy logicznej.A factory abstraction for a component that can create HttpClient instances with custom configuration for a given logical name.

IHttpMessageHandlerFactory

Abstrakcja fabryki dla składnika, który może tworzyć HttpMessageHandler wystąpienia z konfiguracją niestandardową dla danej nazwy logicznej.A factory abstraction for a component that can create HttpMessageHandler instances with custom configuration for a given logical name.

Wyliczenia

ClientCertificateOption

Określa sposób zapewniania certyfikatów klienta.Specifies how client certificates are provided.

CookieUsePolicy

To Wyliczenie umożliwia kontrolę nad plikami cookie HTTP podczas komunikowania się z serwerem.This enumeration allows control of HTTP cookies when communicating with the server.

HttpCompletionOption

Wskazuje HttpClient , czy operacje mają być uważane za ukończone, gdy tylko odpowiedź jest dostępna lub po odczytaniu całego komunikatu odpowiedzi, w tym zawartości.Indicates if HttpClient operations should be considered completed either as soon as a response is available, or after reading the entire response message including the content.

HttpKeepAlivePingPolicy

Określa, kiedy ramka ping protokołu HTTP/2 jest wysyłana w bezczynnym połączeniu.Specifies when the HTTP/2 ping frame is sent on an idle connection.

HttpVersionPolicy

Określa zachowania do wybierania i negocjowania wersji protokołu HTTP dla żądania.Specifies behaviors for selecting and negotiating the HTTP version for a request.

WindowsProxyUsePolicy

To Wyliczenie zawiera dostępne opcje dla ustawień serwera proxy używanych przez program HttpClient w przypadku uruchamiania w systemie Windows.This enumeration provides available options for the proxy settings used by an HttpClient when running on Windows.

Delegaci

HeaderEncodingSelector<TContext>

Reprezentuje metodę, która określa kodowanie, które ma być używane podczas interpretacji wartości nagłówka.Represents a method that specifies the encoding to use when interpreting header values.

Uwagi

System.Net.HttpPrzestrzeń nazw została zaprojektowana tak, aby zapewnić następujące elementy:The System.Net.Http namespace is designed to provide the following:

  1. Składniki klienta HTTP, które umożliwiają użytkownikom korzystanie z nowoczesnych usług sieci Web za pośrednictwem protokołu HTTP.HTTP client components that allow users to consume modern web services over HTTP.

  2. Składniki HTTP, które mogą być używane przez klientów i serwery (na przykład nagłówki i komunikaty HTTP).HTTP components that can be used by both clients and servers (HTTP headers and messages, for example). Zapewnia to spójny model programowania zarówno na kliencie, jak i po stronie serwera dla nowoczesnych usług sieci Web za pośrednictwem protokołu HTTP.This provides a consistent programming model on both the client and the server side for modern web services over HTTP.

System.Net.HttpPrzestrzeń nazw i powiązana System.Net.Http.Headers przestrzeń nazw zapewniają następujący zestaw składników:The System.Net.Http namespace and the related System.Net.Http.Headers namespace provide the following set of components:

  1. HttpClient — Klasa podstawowa używana do wysyłania i odbierania żądań za pośrednictwem protokołu HTTP.HttpClient - the primary class used to send and receive requests over HTTP.

  2. HttpRequestMessage i HttpResponseMessage — komunikaty http zgodnie z definicją w dokumencie RFC 2616 przez grupę IETF.HttpRequestMessage and HttpResponseMessage - HTTP messages as defined in RFC 2616 by the IETF.

  3. HttpHeaders -Nagłówki HTTP zdefiniowane w RFC 2616 przez grupę IETF.HttpHeaders - HTTP headers as defined in RFC 2616 by the IETF.

  4. HttpClientHandler -Programy obsługi HTTP odpowiedzialne za tworzenie komunikatów odpowiedzi HTTP.HttpClientHandler - HTTP handlers responsible for producing HTTP response messages.

Istnieją różne procedury obsługi komunikatów HTTP, które mogą być używane.There are various HTTP message handlers that can be used. Należą do nich następujące elementy:These include the following.

  1. DelegatingHandler -Klasa używana do podłączenia procedury obsługi do łańcucha obsługi.DelegatingHandler - A class used to plug a handler into a handler chain.

  2. HttpMessageHandler — Prosta Klasa, która pochodzi od, która obsługuje najbardziej typowe wymagania dotyczące większości aplikacji.HttpMessageHandler - A simple class to derive from that supports the most common requirements for most applications.

  3. HttpClientHandler -Klasa, która działa w dolnej części łańcucha obsługi, który faktycznie obsługuje operacje transportu HTTP.HttpClientHandler - A class that operates at the bottom of the handler chain that actually handles the HTTP transport operations.

  4. WebRequestHandler -Specjalna klasa, która działa w dolnej części klasy łańcucha obsługi, która obsługuje operacje transportu HTTP z opcjami, które są specyficzne dla System.Net.HttpWebRequest obiektu.WebRequestHandler - A specialty class that operates at the bottom of the handler chain class that handles HTTP transport operations with options that are specific to the System.Net.HttpWebRequest object.

Zawartość wiadomości HTTP odpowiada treści jednostki zdefiniowanej w dokumencie RFC 2616.The contents of an HTTP message corresponds to the entity body defined in RFC 2616.

Do zawartości HTTP można używać kilku klas.A number of classes can be used for HTTP content. Należą do nich następujące elementy:These include the following.

  1. ByteArrayContent — Zawartość HTTP oparta na tablicy bajtów.ByteArrayContent - HTTP content based on a byte array.

  2. FormUrlEncodedContent — Zawartość HTTP spójnych krotek nazwa/wartość zakodowana przy użyciu typu MIME application/x-www-form-urlencoded.FormUrlEncodedContent - HTTP content of name/value tuples encoded using application/x-www-form-urlencoded MIME type.

  3. MultipartContent -Zawartość HTTP, która umożliwia serializacji przy użyciu wieloczęściowego/* specyfikacji typu zawartości.MultipartContent - HTTP content that gets serialized using the multipart/* content type specification.

  4. MultipartFormDataContent -Zawartość HTTP zakodowana przy użyciu wieloczęściowego/formularza-danych typu MIME.MultipartFormDataContent - HTTP content encoded using the multipart/form-data MIME type.

  5. StreamContent — Zawartość HTTP oparta na strumieniu.StreamContent - HTTP content based on a stream.

  6. StringContent — Zawartość HTTP na podstawie ciągu.StringContent - HTTP content based on a string.

Jeśli aplikacja używająca System.Net.Http System.Net.Http.Headers przestrzeni nazw i zamierza pobrać duże ilości danych (50 megabajtów lub więcej), aplikacja powinna przesyłać strumieniowo te pliki do pobrania i nie używać domyślnego buforowania.If an app using the System.Net.Http and System.Net.Http.Headers namespaces intends to download large amounts of data (50 megabytes or more), then the app should stream those downloads and not use the default buffering. Jeśli domyślne buforowanie jest używane, użycie pamięci przez klienta będzie bardzo duże, co może znacznie zmniejszyć wydajność.If the default buffering is used the client memory usage will get very large, potentially resulting in substantially reduced performance.

Klasy w System.Net.Http System.Net.Http.Headers przestrzeniach nazw i mogą służyć do tworzenia aplikacji do sklepu Windows lub aplikacji klasycznych.Classes in the System.Net.Http and System.Net.Http.Headers namespaces can be used to develop Windows Store apps or desktop apps. W przypadku użycia w aplikacji ze sklepu Windows w przypadku klas System.Net.Http w System.Net.Http.Headers przestrzeniach nazw i ma wpływ funkcja izolacji sieci, która jest częścią modelu zabezpieczeń aplikacji używanego przez system Windows 8.When used in a Windows Store app, classes in the System.Net.Http and System.Net.Http.Headers namespaces are affected by network isolation feature, part of the application security model used by the Windows 8. Odpowiednie możliwości sieci muszą być włączone w manifeście aplikacji dla aplikacji ze sklepu Windows dla systemu, aby umożliwić dostęp do sieci za pomocą aplikacji ze sklepu Windows.The appropriate network capabilities must be enabled in the app manifest for a Windows Store app for the system to allow network access by a Windows store app. Aby uzyskać więcej informacji, zobacz izolacja sieci dla aplikacji ze sklepu Windows.For more information, see the Network Isolation for Windows Store Apps.

Zobacz też