System.Net.Http 命名空間
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
提供現代 HTTP 應用的程式介面。
類別
| 名稱 | Description |
|---|---|
| ByteArrayContent |
提供基於位元組陣列的 HTTP 內容。 |
| DelegatingHandler |
一種用於 HTTP 處理器的類型,將 HTTP 回應訊息的處理委派給另一個處理器,稱為內部處理器。 |
| FormUrlEncodedContent |
一個用 application/x-www-form-urlencoded MIME 類型編碼的名稱/值元組容器。 |
| HttpClient |
提供一個類別,用於發送 HTTP 請求及接收由 URI 識別的資源的 HTTP 回應。 |
| HttpClientHandler |
.NET Framework 中 HttpClient 使用的預設訊息處理程序。 |
| HttpContent |
表示 HTTP 實體主體和內容標頭的基類。 |
| HttpMessageHandler |
HTTP 訊息處理程式的基底類型。 |
| HttpMessageInvoker |
一個專門類別,允許應用程式在 HTTP 處理鏈上呼叫該 SendAsync(HttpRequestMessage, CancellationToken) 方法。 |
| HttpMethod |
用來擷取和比較標準 HTTP 方法及建立新 HTTP 方法的協助程序類別。 |
| HttpRequestException |
一個基底類別,用於 和 HttpClient 類別拋出的HttpMessageHandler例外。 |
| HttpRequestMessage |
表示 HTTP 要求訊息。 |
| HttpResponseMessage |
表示 HTTP 回應消息,包括狀態代碼和數據。 |
| MessageProcessingHandler |
這是用於處理程序的基底型態,處理者通常只處理一些請求和/或回應訊息。 |
| MultipartContent |
提供一組 HttpContent 物件,並可依 multipart/* 內容類型規範序列化。 |
| MultipartFormDataContent |
提供一個容器,存放使用 multipart/form-data MIME 類型的內容。 |
| ReadOnlyMemoryContent |
提供基於 ReadOnlyMemory<T>. 的 HTTP 內容。 |
| RtcRequestFactory |
提供現代 HTTP 應用的程式介面。 |
| StreamContent |
提供基於串流的 HTTP 內容。 |
| StringContent |
提供基於字串的 HTTP 內容。 |
| WebRequestHandler |
提供 Windows 商店應用程式或其他環境無法提供的桌面專屬功能。 |
列舉
| 名稱 | Description |
|---|---|
| ClientCertificateOption |
指定如何提供客戶端憑證。 |
| HttpCompletionOption |
指出 HttpClient 作業是否應在回應可用時或讀取包含內容的整個回應訊息之後,視為已完成。 |
備註
System.Net.Http命名空間設計以提供以下元件:
- HTTP 用戶端元件,允許使用者透過 HTTP 使用現代網路服務。
- 這些 HTTP 元件可同時被用戶端與伺服器使用(例如 HTTP 標頭與訊息)。 這在客戶端與伺服器端都為現代 HTTP 網路服務提供一致的程式設計模型。
System.Net.Http命名空間及其相關的System.Net.Http.Headers命名空間提供以下組件集合:
- HttpClient - 主要類別,用於透過 HTTP 發送與接收請求。
- HttpRequestMessage 以及 HttpResponseMessage - 依據 IETF 在 RFC 2616 中定義的 HTTP 訊息。
- HttpHeaders - 依據 IETF 在 RFC 2616 中定義的 HTTP 標頭。
- HttpClientHandler - 負責產生 HTTP 回應訊息的 HTTP 處理器。
你可以使用各種 HTTP 訊息處理程式:
- DelegatingHandler - 一個用來將處理器插入處理器鏈的類別。
- HttpMessageHandler - 一個簡單的類,可從中推導,支援大多數應用中最常見的需求。
- HttpClientHandler - 一個在處理程序鏈底部操作的類別,實際處理 HTTP 傳輸操作。
HTTP 訊息的內容對應於 RFC 2616 中定義的實體實體。
以下類別可用於 HTTP 內容:
- ByteArrayContent - 基於位元組陣列的 HTTP 內容。
- FormUrlEncodedContent - 使用 application/x-www-form-urlencoded MIME 類型編碼的名稱/值元組的 HTTP 內容。
- MultipartContent - HTTP 內容,依 multipart/* 內容類型規範序列化。
- MultipartFormDataContent - 使用 multipart/form-data MIME 類型編碼的 HTTP 內容。
- StreamContent - 基於串流的 HTTP 內容。
- StringContent - 基於字串的 HTTP 內容。
如果你的應用程式使用 System.Net.Http and System.Net.Http.Headers 命名空間,並打算下載大量資料(50 MB 以上),那麼它應該會串流這些下載,而不是使用預設的緩衝區。 如果您使用默認緩衝處理,則用戶端記憶體使用量會變得非常大,可能會導致大幅降低效能。