WebRequest.Create 方法

定义

初始化新的 WebRequest

重载

Create(String)
已过时.

为指定的 URI 方案初始化新的 WebRequest 实例。

Create(Uri)
已过时.

为指定的 URI 方案初始化新的 WebRequest 实例。

Create(String)

Source:
WebRequest.cs
Source:
WebRequest.cs
Source:
WebRequest.cs

注意

WebRequest, HttpWebRequest, ServicePoint, and WebClient are obsolete. Use HttpClient instead.

为指定的 URI 方案初始化新的 WebRequest 实例。

public:
 static System::Net::WebRequest ^ Create(System::String ^ requestUriString);
public static System.Net.WebRequest Create (string requestUriString);
[System.Obsolete("WebRequest, HttpWebRequest, ServicePoint, and WebClient are obsolete. Use HttpClient instead.", DiagnosticId="SYSLIB0014", UrlFormat="https://aka.ms/dotnet-warnings/{0}")]
public static System.Net.WebRequest Create (string requestUriString);
static member Create : string -> System.Net.WebRequest
[<System.Obsolete("WebRequest, HttpWebRequest, ServicePoint, and WebClient are obsolete. Use HttpClient instead.", DiagnosticId="SYSLIB0014", UrlFormat="https://aka.ms/dotnet-warnings/{0}")>]
static member Create : string -> System.Net.WebRequest
Public Shared Function Create (requestUriString As String) As WebRequest

参数

requestUriString
String

标识 Internet 资源的 URI。

返回

特定 URI 方案的 WebRequest 子代。

属性

例外

requestUriString 中指定的请求方案尚未注册。

requestUriStringnull

调用方没有连接到请求的 URI 或请求重定向到的 URI 的 WebPermissionAttribute 权限。

requestUriString 中指定的 URI 不是有效的 URI。

注意:在 .NET for Windows 应用商店应用可移植类库中,请改为捕获基类异常 FormatException

示例

以下示例使用 Create 实例化 HttpWebRequest 实例。 表示目标 URL 的字符串用作构造函数参数。

Uri^ ourUri = gcnew 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();
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();

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()

注解

方法 Create 返回在运行时确定为 WebRequest 最接近的注册匹配项的 requestUri类的后代。

例如,当以 或 开头http://的 URI 传入 requestUri时,HttpWebRequestCreatehttps:// 返回 。 如果改为传递以 ftp:// 开头的 URI,则 Create 该方法将返回实例 FtpWebRequest 。 如果改为传递以 file:// 开头的 URI,则 Create 该方法将返回实例 FileWebRequest

已注册的预注册保留类型包括:

  • http://

  • https://

  • ftp://

  • file://

.NET 包括对 http://https://ftp://file:// URI 方案的支持。 使用 方法注册用于处理其他请求的RegisterPrefix自定义WebRequest后代。

方法 Create 使用 requestUriString 参数创建一个 Uri 实例,该实例传递给新的 WebRequest

备注

当你在应用程序中启用网络跟踪后,此成员将输出跟踪信息。 有关详细信息,请参阅.NET Framework中的网络跟踪

另请参阅

适用于

Create(Uri)

Source:
WebRequest.cs
Source:
WebRequest.cs
Source:
WebRequest.cs

注意

WebRequest, HttpWebRequest, ServicePoint, and WebClient are obsolete. Use HttpClient instead.

为指定的 URI 方案初始化新的 WebRequest 实例。

public:
 static System::Net::WebRequest ^ Create(Uri ^ requestUri);
public static System.Net.WebRequest Create (Uri requestUri);
[System.Obsolete("WebRequest, HttpWebRequest, ServicePoint, and WebClient are obsolete. Use HttpClient instead.", DiagnosticId="SYSLIB0014", UrlFormat="https://aka.ms/dotnet-warnings/{0}")]
public static System.Net.WebRequest Create (Uri requestUri);
static member Create : Uri -> System.Net.WebRequest
[<System.Obsolete("WebRequest, HttpWebRequest, ServicePoint, and WebClient are obsolete. Use HttpClient instead.", DiagnosticId="SYSLIB0014", UrlFormat="https://aka.ms/dotnet-warnings/{0}")>]
static member Create : Uri -> System.Net.WebRequest
Public Shared Function Create (requestUri As Uri) As WebRequest

参数

requestUri
Uri

包含请求的资源的 URI 的 Uri

返回

指定的 URI 方案的 WebRequest 子代。

属性

例外

requestUri 中指定的请求方案未注册。

requestUrinull

调用方没有连接到请求的 URI 或请求重定向到的 URI 的 WebPermissionAttribute 权限。

示例

以下示例使用 Create 实例化 HttpWebRequest 实例。 表示目标 URL 的 URI 用作构造函数参数。

// Create a new 'Uri' object with the specified string.
Uri^ myUri = gcnew Uri( "http://www.contoso.com" );
// Create a new request to the above mentioned URL.
WebRequest^ myWebRequest = WebRequest::Create( myUri );
// Assign the response object of 'WebRequest' to a 'WebResponse' variable.
WebResponse^ myWebResponse = myWebRequest->GetResponse();
// Create a new 'Uri' object with the specified string.
Uri myUri =new Uri("http://www.contoso.com");
// Create a new request to the above mentioned URL.	
WebRequest myWebRequest= WebRequest.Create(myUri);
// Assign the response object of 'WebRequest' to a 'WebResponse' variable.
WebResponse myWebResponse= myWebRequest.GetResponse();
' Create a new 'Uri' object with the specified string.
Dim myUri As New Uri("http://www.contoso.com")
' Create a new request to the above mentioned URL.	
Dim myWebRequest As WebRequest = WebRequest.Create(myUri)
'  Assign the response object of 'WebRequest' to a 'WebResponse' variable.
Dim myWebResponse As WebResponse = myWebRequest.GetResponse()

注解

方法 Create 返回在运行时确定为 WebRequest 最接近的注册匹配项的 requestUri类的后代。

例如,如果创建一个 WebRequest 子代 Handler1 来处理对 http://www.contoso.com/text/ 的请求,创建另一个名为 Handler2 来处理对 http://www.contoso.com/code/的请求,则可以使用 Create 方法返回与任一指定 URI 关联的 WebRequest 后代。

若要仅基于 URI 的方案 WebRequest 部分返回 类的后代,请使用 CreateDefault 方法。

例如,当以 或 开头http://的 URI 传入 requestUri时,HttpWebRequestCreatehttps:// 返回 。 如果改为传递以 ftp:// 开头的 URI,则 Create 该方法将返回实例 FileWebRequest 。 如果改为传递以 file:// 开头的 URI,则 Create 该方法将返回实例 FileWebRequest

已注册的预注册保留类型包括:

  • http://

  • https://

  • ftp://

  • file://

.NET 包括对 http://https://ftp://file:// URI 方案的支持。 使用 方法注册用于处理其他请求的RegisterPrefix自定义WebRequest后代。

备注

当你在应用程序中启用网络跟踪后,此成员将输出跟踪信息。 有关详细信息,请参阅.NET Framework中的网络跟踪

适用于