HttpBaseProtocolFilter 類別

定義

HttpClient實例的基底通訊協定篩選。

public ref class HttpBaseProtocolFilter sealed : IClosable
public ref class HttpBaseProtocolFilter sealed : IClosable, IHttpFilter
/// [Windows.Foundation.Metadata.Activatable(65536, Windows.Foundation.UniversalApiContract)]
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
class HttpBaseProtocolFilter final : IClosable
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
/// [Windows.Foundation.Metadata.Activatable(65536, "Windows.Foundation.UniversalApiContract")]
class HttpBaseProtocolFilter final : IClosable
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
/// [Windows.Foundation.Metadata.Activatable(65536, "Windows.Foundation.UniversalApiContract")]
class HttpBaseProtocolFilter final : IClosable, IHttpFilter
[Windows.Foundation.Metadata.Activatable(65536, typeof(Windows.Foundation.UniversalApiContract))]
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
public sealed class HttpBaseProtocolFilter : System.IDisposable
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
[Windows.Foundation.Metadata.Activatable(65536, "Windows.Foundation.UniversalApiContract")]
public sealed class HttpBaseProtocolFilter : System.IDisposable
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
[Windows.Foundation.Metadata.Activatable(65536, "Windows.Foundation.UniversalApiContract")]
public sealed class HttpBaseProtocolFilter : System.IDisposable, IHttpFilter
function HttpBaseProtocolFilter()
Public NotInheritable Class HttpBaseProtocolFilter
Implements IDisposable
Public NotInheritable Class HttpBaseProtocolFilter
Implements IDisposable, IHttpFilter
繼承
Object Platform::Object IInspectable HttpBaseProtocolFilter
屬性
實作

Windows 需求

裝置系列
Windows 10 (已於 10.0.10240.0 引進)
API contract
Windows.Foundation.UniversalApiContract (已於 v1.0 引進)

備註

HttpBaseProtocolFilter 類別提供 HttpClient 實例所使用的基底篩選或處理常式。 如果未將其他篩選新增至 HttpClient 實例,則 HttpBaseProtocolFilter 物件將是唯一的篩選準則。

HttpBaseProtocolFilter 類別提供一組屬性來切換各種低階 HTTP 堆疊行為。

根據 IHttpFilter 介面的其他篩選可以新增至套用至 HttpClient 實例的篩選鏈結,以進一步處理或處理來自 HttpBaseProtocolFilter 物件的結果。

HttpBaseProtocolFilter 物件會在傳送 HTTP 要求或接收回應時擲回例外狀況,例如,在飛機模式中發生 (連線中斷,例如) 。 在應用程式中使用 HttpClient 的開發人員可能會偏好新增篩選來攔截這些例外狀況,並改為將它們轉換成 HTTP 回應碼。

版本歷程記錄

Windows 版本 SDK 版本 已新增值
1511 10586 CookieUsageBehavior
1607 14393 ClearAuthenticationCache
1607 14393 ServerCustomValidationRequested
1903 18362 CreateForUser
1903 18362 User

建構函式

HttpBaseProtocolFilter()

初始化 HttpBaseProtocolFilter 類別的新實例。

在傳統型應用程式中,在以顯示 UI 的方式使用這個類別的實例之前,您必須將物件與其擁有者的視窗控制碼產生關聯。 如需詳細資訊和程式碼範例,請參閱 顯示相依于 CoreWindow 的 WinRT UI 物件

屬性

AllowAutoRedirect

取得或設定值,指出 HttpBaseProtocolFilter 是否應遵循重新導向回應。

AllowUI

取得或設定值,指出 HttpBaseProtocolFilter 是否可以在伺服器要求時提示使用者認證。

AutomaticDecompression

取得或設定值,這個值表示 HttpBaseProtocolFilter 是否可以自動解壓縮 HTTP 內容回應。

CacheControl

取得或設定要在 HttpBaseProtocolFilter 物件上使用的讀取和寫入快取控制項行為。

ClientCertificate

取得或設定用戶端 SSL 憑證,如果伺服器要求用戶端憑證,則會傳送至伺服器。

CookieManager

使用與應用程式相關聯的 Cookie 取得 HttpCookieManager

CookieUsageBehavior

取得或設定 Cookie 使用行為。 根據預設,會自動處理 Cookie。

IgnorableServerCertificateErrors

取得應用程式後續可能選擇忽略的 SSL 伺服器憑證錯誤的向量。

MaxConnectionsPerServer

取得或設定 HttpBaseProtocolFilter 物件每個 HTTP 伺服器允許的 TCP 連線數目上限。

MaxVersion

取得或設定使用的 HTTP 通訊協定版本。

ProxyCredential

取得或設定要用來與 HTTP Proxy 交涉的認證。

ServerCredential

取得或設定要用來向 HTTP 伺服器進行驗證的認證。

UseProxy

取得或設定值,指出 HttpBaseProtocolFilter 是否可以使用 Proxy 來傳送 HTTP 要求。

User

取得與HttpBaseProtocolFilter相關聯的使用者

方法

ClearAuthenticationCache()

清除裝置上目前快取的驗證認證。

Close()

關閉 HttpBaseProtocolFilter 實例,並釋放已配置的資源。

CreateForUser(User)

為特定使用者建立新的HttpBaseProtocolFilter

Dispose()

執行與釋放 (Free)、釋放 (Release) 或重設 Unmanaged 資源相關聯之應用程式定義的工作。

SendRequestAsync(HttpRequestMessage)

使用 HttpBaseProtocolFilter 作為非同步作業傳送 HTTP 要求。

事件

ServerCustomValidationRequested

當 SSL/TLS 連線與伺服器建立時,就會引發此事件。 如果您需要執行額外的驗證 (,以及伺服器 SSL 憑證的 OS 預設) ,您應該實作此事件的事件處理常式。

適用於

另請參閱