次の方法で共有


WebRequest.Create メソッド (String)

指定した URI スキーム用に新しい WebRequest のインスタンスを初期化します。

Overloads Public Shared Function Create( _
   ByVal requestUriString As String _) As WebRequest
[C#]
public static WebRequest Create(stringrequestUriString);
[C++]
public: static WebRequest* Create(String* requestUriString);
[JScript]
public static function Create(
   requestUriString : String) : WebRequest;

パラメータ

  • requestUriString
    インターネット リソースを識別する URI。

戻り値

特定の URI スキーム用の WebRequest 派生クラス。

例外

例外の種類 条件
NotSupportedException requestUriString で指定された要求スキームが登録されていません。
ArgumentNullException requestUriString が null 参照 (Visual Basic では Nothing) です。
SecurityException 呼び出し元に、要求された URI に接続するためのアクセス許可、または要求のリダイレクト先の URI に接続するためのアクセス許可がありません。
UriFormatException requestUriString で指定された URI が有効な URI ではありません。

解説

Create メソッドは、 requestUri に最も近い登録 URI として実行時に決定される、 WebRequest クラスの派生クラスを返します。

たとえば、 http:// で始まる URI が requestUri で渡される場合、 CreateHttpWebRequest インスタンスを返します。これに対して、 file:// で始まる URI が渡される場合、 Create メソッドは FileWebRequest インスタンスを返します。

.NET Framework は、 http://https://file:// の各 URI スキームをサポートしています。その他の要求を処理するカスタム WebRequest 派生クラスは、 RegisterPrefix メソッドで登録します。

Create メソッドは、 requestUriString パラメータを使用して、新しい WebRequest に渡す Uri インスタンスを作成します。

使用例

[Visual Basic, C#, C++] Create を使用して、 HttpWebRequest インスタンスをインスタンス化する例を次に示します。ターゲット URL を表す文字列がコンストラクタ パラメータとして使用されます。

 

Dim ourUri As New Uri(url)
' Create a 'WebRequest' object with the specified url. 

Dim myWebRequest As WebRequest = WebRequest.Create(url)

' Send the 'WebRequest' and wait for response.
Dim myWebResponse As WebResponse = myWebRequest.GetResponse()

' "ResponseUri" property is used to get the actual Uri from where the response was attained.
If ourUri.Equals(myWebResponse.ResponseUri) Then
    Console.WriteLine(ControlChars.Cr + "Request Url : {0} was not redirected", url)
Else
    Console.WriteLine(ControlChars.Cr + "Request Url : {0} was redirected to {1}", url, myWebResponse.ResponseUri)
End If 

' Release resources of response object.
myWebResponse.Close()


[C#] 
Uri ourUri = new Uri(url);            

// Create a 'WebRequest' object with the specified url. 
WebRequest myWebRequest = WebRequest.Create(url); 

// Send the 'WebRequest' and wait for response.
WebResponse myWebResponse = myWebRequest.GetResponse(); 

// Use "ResponseUri" property to get the actual Uri from where the response was attained.
if (ourUri.Equals(myWebResponse.ResponseUri))
    Console.WriteLine("\nRequest Url : {0} was not redirected",url);   
else
    Console.WriteLine("\nRequest Url : {0} was redirected to {1}",url,myWebResponse.ResponseUri);   
// Release resources of response object.
myWebResponse.Close(); 


[C++] 
Uri* ourUri = new Uri(url);

// Create a 'WebRequest' object with the specified url.
WebRequest* myWebRequest = WebRequest::Create(url);

// Send the 'WebRequest' and wait for response.
WebResponse* myWebResponse = myWebRequest->GetResponse();

// Use "ResponseUri" property to get the actual Uri from where the response was attained.
if (ourUri->Equals(myWebResponse->ResponseUri))
   Console::WriteLine(S"\nRequest Url : {0} was not redirected", url);
else
   Console::WriteLine(S"\nRequest Url : {0} was redirected to {1}", url, myWebResponse->ResponseUri);
// Release resources of response object.
myWebResponse->Close();

[JScript] JScript のサンプルはありません。Visual Basic、C#、および C++ のサンプルを表示するには、このページの左上隅にある言語のフィルタ ボタン 言語のフィルタ をクリックします。

必要条件

プラットフォーム: Windows 98, Windows NT 4.0, Windows Millennium Edition, Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows Server 2003 ファミリ, .NET Compact Framework - Windows CE .NET, Common Language Infrastructure (CLI) Standard

参照

WebRequest クラス | WebRequest メンバ | System.Net 名前空間 | WebRequest.Create オーバーロードの一覧 | プラグ可能なプロトコルのプログラミング