WebClient.Credentials 屬性
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
取得或設定傳送至主機並用來驗證要求的網路認證。
public:
property System::Net::ICredentials ^ Credentials { System::Net::ICredentials ^ get(); void set(System::Net::ICredentials ^ value); };
public System.Net.ICredentials? Credentials { get; set; }
public System.Net.ICredentials Credentials { get; set; }
member this.Credentials : System.Net.ICredentials with get, set
Public Property Credentials As ICredentials
屬性值
ICredentials,其中包含要求的驗證認證。 預設值為 null。
範例
下列程式代碼範例會使用使用者的系統認證來驗證要求。
int main()
{
try
{
WebClient^ client = gcnew WebClient;
client->Credentials = CredentialCache::DefaultCredentials;
array<Byte>^pageData = client->DownloadData( "http://www.contoso.com" );
String^ pageHtml = Encoding::ASCII->GetString( pageData );
Console::WriteLine( pageHtml );
}
catch ( WebException^ webEx )
{
Console::Write( webEx );
}
}
public static void Main()
{
try {
WebClient client = new WebClient();
client.Credentials = CredentialCache.DefaultCredentials;
Byte[] pageData = client.DownloadData("http://www.contoso.com");
string pageHtml = Encoding.ASCII.GetString(pageData);
Console.WriteLine(pageHtml);
} catch (WebException webEx) {
Console.Write(webEx.ToString());
}
}
Public Shared Sub Main()
Try
Dim client As New WebClient()
client.Credentials = CredentialCache.DefaultCredentials
Dim pageData As [Byte]() = client.DownloadData("http://www.contoso.com")
Dim pageHtml As String = Encoding.ASCII.GetString(pageData)
Console.WriteLine(pageHtml)
Catch webEx As WebException
Console.Write(webEx.ToString())
End Try
End Sub
備註
謹慎
WebRequest、HttpWebRequest、ServicePoint和 WebClient 已經過時,您不應該將它們用於新的開發。 請改用 HttpClient。
Credentials 屬性包含用來存取主機上資源的驗證認證。 在大部分的用戶端案例中,您應該使用 DefaultCredentials,這是目前登入用戶的認證。 若要這樣做,請將 UseDefaultCredentials 屬性設定為 true,而不是設定此屬性。
如果在中介層應用程式中使用 WebClient 類別,例如 ASP.NET 應用程式,則 DefaultCredentials 屬於執行 ASP 頁面的帳戶(伺服器端認證)。 一般而言,您會將此屬性設定為代表提出要求之客戶端的認證。
基於安全性考慮,當自動遵循重新導向時,請將您想要包含在重新導向中的認證儲存在 CredentialCache 中,並將它指派給這個屬性。 如果此屬性包含 CredentialCache以外的任何專案,則此屬性會在重新導向時自動設定為 null。 在這些情況下,將這個屬性值自動設定為 null 可防止將認證傳送至任何非預期的目的地。