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 で渡される場合、 Create は HttpWebRequest インスタンスを返します。これに対して、 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 オーバーロードの一覧 | プラグ可能なプロトコルのプログラミング