WebRequest.Proxy プロパティ
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
子孫クラスでオーバーライドされると、このインターネット リソースへのアクセスに使用するネットワーク プロキシを取得または設定します。
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
プロパティ値
インターネット リソースへのアクセスに使用する IWebProxy。
例外
子孫クラスでプロパティがオーバーライドされていない場合は、プロパティの取得または設定が試行されます。
例
次の例では、現在のネットワーク プロキシ アドレスを表示し、ユーザーが新しいネットワーク プロキシ アドレスとポート番号を割り当てることができます。
// 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
注釈
注意
WebRequest
、HttpWebRequest
、ServicePoint
、WebClient
は廃止されており、新しい開発には使用しないでください。 代わりに HttpClient を使用してください。
Proxy プロパティは、要求がインターネット リソースへのアクセスに使用するネットワーク プロキシを識別します。 要求は、インターネット リソースに直接ではなく、プロキシ サーバーを介して行われます。
手記
WebRequest クラスは、abstract
クラスです。 実行時の WebRequest インスタンスの実際の動作は、WebRequest.Create メソッドによって返される子孫クラスによって決まります。 既定値と例外の詳細については、HttpWebRequest や FileWebRequestなどの子孫クラスのドキュメントを参照してください。
適用対象
こちらもご覧ください
.NET