HttpCredentialsHeaderValue 類別
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
表示 HTTP 要求上 Authorization 或 Proxy-Authorization HTTP 標頭的值。
public ref class HttpCredentialsHeaderValue sealed : IStringable
/// [Windows.Foundation.Metadata.Activatable(Windows.Web.Http.Headers.IHttpCredentialsHeaderValueFactory, 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 HttpCredentialsHeaderValue final : IStringable
/// [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(Windows.Web.Http.Headers.IHttpCredentialsHeaderValueFactory, 65536, "Windows.Foundation.UniversalApiContract")]
class HttpCredentialsHeaderValue final : IStringable
[Windows.Foundation.Metadata.Activatable(typeof(Windows.Web.Http.Headers.IHttpCredentialsHeaderValueFactory), 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 HttpCredentialsHeaderValue : IStringable
[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(typeof(Windows.Web.Http.Headers.IHttpCredentialsHeaderValueFactory), 65536, "Windows.Foundation.UniversalApiContract")]
public sealed class HttpCredentialsHeaderValue : IStringable
function HttpCredentialsHeaderValue(scheme, token)
Public NotInheritable Class HttpCredentialsHeaderValue
Implements IStringable
- 繼承
- 屬性
- 實作
Windows 需求
裝置系列 |
Windows 10 (已於 10.0.10240.0 引進)
|
API contract |
Windows.Foundation.UniversalApiContract (已於 v1.0 引進)
|
範例
下列範例程式碼示範使用 HttpCredentialsHeaderValue 類別的屬性和方法,在HttpRequestMessage物件上取得和設定Authorization HTTP 標頭的方法。
using System;
using Windows.Web.Http;
using Windows.Web.Http.Headers;
public void DemonstrateHeaderRequestAuthorization() {
var request = new HttpRequestMessage();
// Set the header with a strong type.
string username = "user";
string password = "password";
var buffer = Windows.Security.Cryptography.CryptographicBuffer.ConvertStringToBinary (username + ":" + password, Windows.Security.Cryptography.BinaryStringEncoding.Utf16LE);
string base64token = Windows.Security.Cryptography.CryptographicBuffer.EncodeToBase64String(buffer);
request.Headers.Authorization = new HttpCredentialsHeaderValue("Basic", base64token);
// Get the strong type out
System.Diagnostics.Debug.WriteLine("One of the Authorization values: {0}={1}",
request.Headers.Authorization.Scheme,
request.Headers.Authorization.Token);
// The ToString() is useful for diagnostics, too.
System.Diagnostics.Debug.WriteLine("The Authorization ToString() results: {0}", request.Headers.Authorization.ToString());
}
下列範例程式碼示範使用 HttpCredentialsHeaderValue 類別的屬性和方法,在HttpRequestMessage物件上取得和設定Proxy-Authorization HTTP 標頭的方法。
using System;
using Windows.Web.Http;
using Windows.Web.Http.Headers;
public void DemonstrateHeaderRequestProxyAuthorization() {
var request = new HttpRequestMessage();
// Set the header with a strong type.
string username = "user";
string password = "password";
var buffer = Windows.Security.Cryptography.CryptographicBuffer.ConvertStringToBinary(username + ":" + password, Windows.Security.Cryptography.BinaryStringEncoding.Utf16LE);
string base64token = Windows.Security.Cryptography.CryptographicBuffer.EncodeToBase64String(buffer);
request.Headers.ProxyAuthorization = new HttpCredentialsHeaderValue("Basic", base64token);
// Get the strong type out
System.Diagnostics.Debug.WriteLine("One of the ProxyAuthorixation values: {0}={1}",
request.Headers.ProxyAuthorization.Scheme,
request.Headers.ProxyAuthorization.Token);
// The ToString() is useful for diagnostics, too.
System.Diagnostics.Debug.WriteLine("The ProxyAuthorization ToString() results: {0}", request.Headers.ProxyAuthorization.ToString());
}
備註
HttpCredentialsHeaderValue 類別代表 HTTP 要求上的 Authorization 或 Proxy-Authorization HTTP 標頭。
HttpRequestHeaderCollection上的Authorization屬性會傳回代表Authorization HTTP 標頭的 HttpCredentialsHeaderValue 物件。 HttpRequestHeaderCollection上的ProxyAuthorization屬性會傳回代表Proxy-Authorization HTTP 標頭的 HttpCredentialsHeaderValue 物件。
建構函式
HttpCredentialsHeaderValue(String) |
使用要用於驗證的配置,初始化 HttpCredentialsHeaderValue 類別的新實例。 |
HttpCredentialsHeaderValue(String, String) |
使用配置和使用者權杖資訊,初始化 HttpCredentialsHeaderValue 類別的新實例,以用於驗證。 |
屬性
Parameters |
取得 授權 或 Proxy-Authorization HTTP 標頭中包含的一組名稱/值組。 |
Scheme |
取得要用於驗證的配置。 |
Token |
取得 授權 或 Proxy-Authorization HTTP 標頭中使用的使用者權杖資訊。 |
方法
Parse(String) |
將字串轉換為 HttpCredentialsHeaderValue 實例。 |
ToString() |
會傳回字串,表示目前的 HttpCredentialsHeaderValue 物件。 |
TryParse(String, HttpCredentialsHeaderValue) |
判斷字串是否為有效的 HttpCredentialsHeaderValue 資訊。 |