WebRequest.Proxy Properti
Definisi
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
Ketika ditimpa di kelas turunan, mendapatkan atau mengatur proksi jaringan untuk digunakan untuk mengakses sumber daya Internet ini.
public:
virtual property System::Net::IWebProxy ^ Proxy { System::Net::IWebProxy ^ get(); void set(System::Net::IWebProxy ^ value); };
public virtual System.Net.IWebProxy Proxy { get; set; }
public virtual System.Net.IWebProxy? Proxy { get; set; }
member this.Proxy : System.Net.IWebProxy with get, set
Public Overridable Property Proxy As IWebProxy
Nilai Properti
IWebProxy yang digunakan untuk mengakses sumber daya Internet.
Pengecualian
Setiap upaya dilakukan untuk mendapatkan atau mengatur properti, ketika properti tidak ditimpa di kelas turunan.
Contoh
Contoh berikut menampilkan alamat proksi jaringan saat ini dan memungkinkan pengguna untuk menetapkan alamat proksi jaringan dan nomor port baru.
// Create a new request to the mentioned URL.
WebRequest^ myWebRequest = WebRequest::Create( "http://www.contoso.com" );
WebProxy^ myProxy = gcnew WebProxy;
// Obtain the Proxy Prperty of the Default browser.
myProxy = (WebProxy^)(myWebRequest->Proxy);
// Print myProxy address to the console.
Console::WriteLine( "\nThe actual default Proxy settings are {0}", myProxy->Address );
try
{
Console::WriteLine( "\nPlease enter the new Proxy Address to be set " );
Console::WriteLine( "The format of the address should be http://proxyUriAddress:portaddress" );
Console::WriteLine( "Example:http://proxyadress.com:8080" );
String^ proxyAddress;
proxyAddress = Console::ReadLine();
if ( proxyAddress->Length == 0 )
{
myWebRequest->Proxy = myProxy;
}
else
{
Console::WriteLine( "\nPlease enter the Credentials" );
Console::WriteLine( "Username:" );
String^ username;
username = Console::ReadLine();
Console::WriteLine( "\nPassword:" );
String^ password;
password = Console::ReadLine();
// Create a new Uri object.
Uri^ newUri = gcnew Uri( proxyAddress );
// Associate the new Uri object to the myProxy object.
myProxy->Address = newUri;
// Create a NetworkCredential object and is assign to the Credentials
// property of the Proxy object.
myProxy->Credentials = gcnew NetworkCredential( username,password );
myWebRequest->Proxy = myProxy;
}
Console::WriteLine( "\nThe Address of the new Proxy settings are {0}", myProxy->Address );
WebResponse^ myWebResponse = myWebRequest->GetResponse();
// Print the HTML contents of the page to the console.
Stream^ streamResponse = myWebResponse->GetResponseStream();
StreamReader^ streamRead = gcnew StreamReader( streamResponse );
array<Char>^ readBuff = gcnew array<Char>(256);
int count = streamRead->Read( readBuff, 0, 256 );
Console::WriteLine( "\nThe contents of the Html pages are :" );
while ( count > 0 )
{
String^ outputData = gcnew String( readBuff,0,count );
Console::Write( outputData );
count = streamRead->Read( readBuff, 0, 256 );
}
// Close the Stream object.
streamResponse->Close();
streamRead->Close();
// Release the HttpWebResponse Resource.
myWebResponse->Close();
Console::WriteLine( "\nPress any key to continue........." );
Console::Read();
}
catch ( UriFormatException^ e )
{
Console::WriteLine( "\nUriFormatException is thrown->Message is {0}", e->Message );
Console::WriteLine( "\nThe format of the myProxy address you entered is invalid" );
Console::WriteLine( "\nPress any key to continue........." );
Console::Read();
}
// Create a new request to the mentioned URL.
WebRequest myWebRequest=WebRequest.Create("http://www.contoso.com");
WebProxy myProxy=new WebProxy();
// Obtain the Proxy Prperty of the Default browser.
myProxy=(WebProxy)myWebRequest.Proxy;
// Print myProxy address to the console.
Console.WriteLine("\nThe actual default Proxy settings are {0}",myProxy.Address);
try
{
Console.WriteLine("\nPlease enter the new Proxy Address to be set ");
Console.WriteLine("The format of the address should be http://proxyUriAddress:portaddress");
Console.WriteLine("Example:http://proxyadress.com:8080");
string proxyAddress;
proxyAddress =Console.ReadLine();
if(proxyAddress.Length==0)
{
myWebRequest.Proxy=myProxy;
}
else
{
Console.WriteLine("\nPlease enter the Credentials");
Console.WriteLine("Username:");
string username;
username =Console.ReadLine();
Console.WriteLine("\nPassword:");
string password;
password =Console.ReadLine();
// Create a new Uri object.
Uri newUri=new Uri(proxyAddress);
// Associate the new Uri object to the myProxy object.
myProxy.Address=newUri;
// Create a NetworkCredential object and is assign to the Credentials property of the Proxy object.
myProxy.Credentials=new NetworkCredential(username,password);
myWebRequest.Proxy=myProxy;
}
Console.WriteLine("\nThe Address of the new Proxy settings are {0}",myProxy.Address);
WebResponse myWebResponse=myWebRequest.GetResponse();
// Print the HTML contents of the page to the console.
Stream streamResponse=myWebResponse.GetResponseStream();
StreamReader streamRead = new StreamReader( streamResponse );
Char[] readBuff = new Char[256];
int count = streamRead.Read( readBuff, 0, 256 );
Console.WriteLine("\nThe contents of the Html pages are :");
while (count > 0)
{
String outputData = new String(readBuff, 0, count);
Console.Write(outputData);
count = streamRead.Read(readBuff, 0, 256);
}
// Close the Stream object.
streamResponse.Close();
streamRead.Close();
// Release the HttpWebResponse Resource.
myWebResponse.Close();
Console.WriteLine("\nPress any key to continue.........");
Console.Read();
}
catch(UriFormatException e)
{
Console.WriteLine("\nUriFormatException is thrown.Message is {0}",e.Message);
Console.WriteLine("\nThe format of the myProxy address you entered is invalid");
Console.WriteLine("\nPress any key to continue.........");
Console.Read();
}
' Create a new request to the mentioned URL.
Dim myWebRequest As WebRequest = WebRequest.Create("http://www.contoso.com")
Dim myProxy As New WebProxy()
' Obtain the Proxy Prperty of the Default browser.
myProxy = CType(myWebRequest.Proxy, WebProxy)
' Print myProxy address to the console.
Console.WriteLine(ControlChars.Cr + "The actual default Proxy settings are {0}", myProxy.Address)
Try
Console.WriteLine(ControlChars.Cr + "Please enter the new Proxy Address to be set ")
Console.WriteLine("The format of the address should be http://proxyUriAddress:portaddress")
Console.WriteLine("Example:http://moon.proxy.com:8080")
Dim proxyAddress As String
proxyAddress = Console.ReadLine()
If proxyAddress.Length = 0 Then
myWebRequest.Proxy = myProxy
Else
Console.WriteLine(ControlChars.Cr + "Please enter the Credentials")
Console.WriteLine("Username:")
Dim username As String
username = Console.ReadLine()
Console.WriteLine(ControlChars.Cr + "Password:")
Dim password As String
password = Console.ReadLine()
' Create a new Uri object.
Dim newUri As New Uri(proxyAddress)
' Associate the new Uri object to the myProxy object.
myProxy.Address = newUri
' Create a NetworkCredential object and is assign to the Credentials property of the Proxy object.
myProxy.Credentials = New NetworkCredential(username, password)
myWebRequest.Proxy = myProxy
End If
Console.WriteLine(ControlChars.Cr + "The Address of the new Proxy settings are {0}", myProxy.Address)
Dim myWebResponse As WebResponse = myWebRequest.GetResponse()
' Print the HTML contents of the page to the console.
Dim streamResponse As Stream = myWebResponse.GetResponseStream()
Dim streamRead As New StreamReader(streamResponse)
Dim readBuff(256) As [Char]
Dim count As Integer = streamRead.Read(readBuff, 0, 256)
Console.WriteLine(ControlChars.Cr + "The contents of the Html pages are :")
While count > 0
Dim outputData As New [String](readBuff, 0, count)
Console.Write(outputData)
count = streamRead.Read(readBuff, 0, 256)
End While
' Close the Stream object.
streamResponse.Close()
streamRead.Close()
' Release the HttpWebResponse Resource.
myWebResponse.Close()
Console.WriteLine(ControlChars.Cr + "Press any key to continue.........")
Console.Read()
Catch e As UriFormatException
Console.WriteLine(ControlChars.Cr + "{0}", e.Message)
Console.WriteLine(ControlChars.Cr + "The format of the myProxy address you entered is invalid")
End Try
Keterangan
Hati
WebRequest
, HttpWebRequest
, ServicePoint
, dan WebClient
usang, dan Anda tidak boleh menggunakannya untuk pengembangan baru. Gunakan HttpClient sebagai gantinya.
Properti Proxy mengidentifikasi proksi jaringan yang digunakan permintaan untuk mengakses sumber daya Internet. Permintaan dibuat melalui server proksi daripada langsung ke sumber daya Internet.
Nota
Kelas WebRequest adalah kelas abstract
. Perilaku aktual instans WebRequest pada run time ditentukan oleh kelas turunan yang dikembalikan oleh metode WebRequest.Create. Untuk informasi selengkapnya tentang nilai dan pengecualian default, lihat dokumentasi untuk kelas turunan, seperti HttpWebRequest dan FileWebRequest.