WebRequest Class

定義

Uniform Resource Identifier (URI) に対する要求を実行します。 Makes a request to a Uniform Resource Identifier (URI). これは abstract クラスです。 This is an abstract class.

public abstract class WebRequest : MarshalByRefObject, System.Runtime.Serialization.ISerializable
継承
派生
実装

次の例を作成する方法を示しています、WebRequestインスタンスし、応答を返します。The following example shows how to create a WebRequest instance and return the response.

#using <System.dll>

using namespace System;
using namespace System::IO;
using namespace System::Net;
using namespace System::Text;
int main()
{
   
   // Create a request for the URL.   
   WebRequest^ request = WebRequest::Create( "http://www.contoso.com/default.html" );
   
   // If required by the server, set the credentials.
   request->Credentials = CredentialCache::DefaultCredentials;
   
   // Get the response.
   HttpWebResponse^ response = dynamic_cast<HttpWebResponse^>(request->GetResponse());
   
   // Display the status.
   Console::WriteLine( response->StatusDescription );
   
   // Get the stream containing content returned by the server.
   Stream^ dataStream = response->GetResponseStream();
   
   // Open the stream using a StreamReader for easy access.
   StreamReader^ reader = gcnew StreamReader( dataStream );
   
   // Read the content.
   String^ responseFromServer = reader->ReadToEnd();
   
   // Display the content.
   Console::WriteLine( responseFromServer );
   
   // Cleanup the streams and the response.
   reader->Close();
   dataStream->Close();
   response->Close();
}

using System;
using System.IO;
using System.Net;
using System.Text;

namespace Examples.System.Net
{
    public class WebRequestGetExample
    {
        public static void Main ()
        {
            // Create a request for the URL. 		
            WebRequest request = WebRequest.Create ("http://www.contoso.com/default.html");
            // If required by the server, set the credentials.
            request.Credentials = CredentialCache.DefaultCredentials;
            // Get the response.
            HttpWebResponse response = (HttpWebResponse)request.GetResponse ();
            // Display the status.
            Console.WriteLine (response.StatusDescription);
            // Get the stream containing content returned by the server.
            Stream dataStream = response.GetResponseStream ();
            // Open the stream using a StreamReader for easy access.
            StreamReader reader = new StreamReader (dataStream);
            // Read the content.
            string responseFromServer = reader.ReadToEnd ();
            // Display the content.
            Console.WriteLine (responseFromServer);
            // Cleanup the streams and the response.
            reader.Close ();
            dataStream.Close ();
            response.Close ();
        }
    }
}
Imports System
Imports System.IO
Imports System.Net
Imports System.Text
Namespace Examples.System.Net
    Public Class WebRequestGetExample

        Public Shared Sub Main()
            ' Create a request for the URL. 		
            Dim request As WebRequest = WebRequest.Create("http://www.contoso.com/default.html")
            ' If required by the server, set the credentials.
            request.Credentials = CredentialCache.DefaultCredentials
            ' Get the response.
            Dim response As HttpWebResponse = CType(request.GetResponse(), HttpWebResponse)
            ' Display the status.
            Console.WriteLine(response.StatusDescription)
            ' Get the stream containing content returned by the server.
            Dim dataStream As Stream = response.GetResponseStream()
            ' Open the stream using a StreamReader for easy access.
            Dim reader As New StreamReader(dataStream)
            ' Read the content.
            Dim responseFromServer As String = reader.ReadToEnd()
            ' Display the content.
            Console.WriteLine(responseFromServer)
            ' Cleanup the streams and the response.
            reader.Close()
            dataStream.Close()
            response.Close()
        End Sub 'Main
    End Class 'WebRequestGetExample
End Namespace

注釈

WebRequest abstractの基本クラス。インターネットからデータにアクセスするための NET の要求/応答モデル。WebRequest is the abstract base class for .NET's request/response model for accessing data from the Internet. 要求/応答モデルを使用するアプリケーションはアプリケーションがのインスタンスで使用されるプロトコルに依存しない方法で、インターネットからデータを要求することができます、WebRequestクラスの詳細をプロトコル固有の派生クラスが実行中要求。An application that uses the request/response model can request data from the Internet in a protocol-agnostic manner, in which the application works with instances of the WebRequest class while protocol-specific descendant classes carry out the details of the request.

要求は、アプリケーションからサーバー上の Web ページなどの特定の URI に送信されます。Requests are sent from an application to a particular URI, such as a Web page on a server. URI の一覧から作成する場合は、適切な派生クラスを決定するWebRequest子孫が、アプリケーションの登録します。The URI determines the proper descendant class to create from a list of WebRequest descendants registered for the application. WebRequest 子孫では、HTTP、FTP などの特定のプロトコルを処理するために通常は登録されてが、特定のサーバーまたはサーバー上のパスへの要求を処理するために登録することができます。WebRequest descendants are typically registered to handle a specific protocol, such as HTTP or FTP, but can be registered to handle a request to a specific server or path on a server.

WebRequestクラスがスローされます、WebExceptionインターネット リソースにアクセス中にエラーが発生した場合。The WebRequest class throws a WebException when errors occur while accessing an Internet resource. Statusプロパティは、のいずれか、WebExceptionStatusエラーの原因を示す値。The Status property is one of the WebExceptionStatus values that indicates the source of the error. ときにStatusWebExceptionStatus.ProtocolErrorResponseプロパティが含まれています、WebResponseインターネット リソースから受信します。When Status is WebExceptionStatus.ProtocolError, the Response property contains the WebResponse received from the Internet resource.

WebRequestクラスは、abstractクラスの実際の動作WebRequest実行時にインスタンスがによって返される派生クラスによって決定されますCreateメソッド。Because the WebRequest class is an abstract class, the actual behavior of WebRequest instances at run time is determined by the descendant class returned by Create method. 既定値と例外の詳細については、の場合など、子孫クラスのドキュメントを参照してHttpWebRequestFileWebRequestします。For more information about default values and exceptions, see the documentation for the descendant classes, such as HttpWebRequest and FileWebRequest.

注意

使用して、Create新しい初期化WebRequestインスタンス。Use the Create method to initialize new WebRequest instances. 使用しないでください、WebRequestコンス トラクター。Do not use the WebRequest constructor.

注意

WebRequest オブジェクトを作成するアプリケーションは、通常のユーザーの資格情報で実行する場合、アプリケーションはアクセス許可が明示的に指定されてユーザーにこれを行う場合を除き、ローカル コンピューター ストアにインストールされている証明書にアクセスすることはできません。If the application that creates the WebRequest object runs with the credentials of a Normal user, the application will not be able to access certificates installed in the local machine store unless permission has been explicitly given to the user to do so.

注意 (継承者)

継承する場合WebRequest、次のメンバーをオーバーライドする必要があります: MethodRequestUriHeadersContentLengthContentTypeCredentialsPreAuthenticateGetRequestStream()BeginGetRequestStream(AsyncCallback, Object)EndGetRequestStream(IAsyncResult)GetResponse()BeginGetResponse(AsyncCallback, Object)、およびEndGetResponse(IAsyncResult)します。さらの実装を提供する必要があります、IWebRequestCreateを定義するインターフェイス、Create(Uri)メソッドを呼び出すときに使用されるCreate(Uri)します。実装するクラスを登録する必要があります、IWebRequestCreateインターフェイスを使用して、RegisterPrefix(String, IWebRequestCreate)メソッドまたは構成ファイル。

When you inherit from WebRequest, you must override the following members: Method, RequestUri, Headers, ContentLength, ContentType, Credentials, PreAuthenticate, GetRequestStream(), BeginGetRequestStream(AsyncCallback, Object), EndGetRequestStream(IAsyncResult), GetResponse(), BeginGetResponse(AsyncCallback, Object), and EndGetResponse(IAsyncResult). In addition, you must provide an implementation of the IWebRequestCreate interface, which defines the Create(Uri) method used when you call Create(Uri). You must register the class that implements the IWebRequestCreate interface, using the RegisterPrefix(String, IWebRequestCreate) method or the configuration file.

コンストラクター

WebRequest()

WebRequest クラスの新しいインスタンスを初期化します。 Initializes a new instance of the WebRequest class.

WebRequest(SerializationInfo, StreamingContext)

WebRequest クラスと SerializationInfo クラスの指定したインスタンスから、StreamingContext クラスの新しいインスタンスを初期化します。 Initializes a new instance of the WebRequest class from the specified instances of the SerializationInfo and StreamingContext classes.

プロパティ

AuthenticationLevel

この要求で使用する認証レベルおよび偽装レベルを示す値を取得または設定します。 Gets or sets values indicating the level of authentication and impersonation used for this request.

CachePolicy

この要求のキャッシュ ポリシーを取得または設定します。 Gets or sets the cache policy for this request.

ConnectionGroupName

派生クラスでオーバーライドされると、要求で使用する接続グループの名前を取得または設定します。 When overridden in a descendant class, gets or sets the name of the connection group for the request.

ContentLength

派生クラスでオーバーライドされると、送信している要求データのコンテンツ長を取得または設定します。 When overridden in a descendant class, gets or sets the content length of the request data being sent.

ContentType

派生クラスでオーバーライドされると、送信している要求データのコンテンツ タイプを取得または設定します。 When overridden in a descendant class, gets or sets the content type of the request data being sent.

CreatorInstance

派生クラスでオーバーライドされると、IWebRequestCreate クラスから派生するファクトリ オブジェクトを取得します。このクラスは、指定 URI に対して要求を行うためにインスタンス化される WebRequest を作成するために使用されます。 When overridden in a descendant class, gets the factory object derived from the IWebRequestCreate class used to create the WebRequest instantiated for making the request to the specified URI.

Credentials

派生クラスでオーバーライドされると、インターネット リソースを使用して要求を認証するために使用されるネットワーク資格情報を取得または設定します。 When overridden in a descendant class, gets or sets the network credentials used for authenticating the request with the Internet resource.

DefaultCachePolicy

この要求の既定のキャッシュ ポリシーを取得または設定します。 Gets or sets the default cache policy for this request.

DefaultWebProxy

グローバル HTTP プロキシを取得または設定します。 Gets or sets the global HTTP proxy.

Headers

派生クラスでオーバーライドされると、要求に関連付けられたヘッダーの名前/値ペアのコレクションを取得または設定します。 When overridden in a descendant class, gets or sets the collection of header name/value pairs associated with the request.

ImpersonationLevel

現在の要求に対する偽装レベルを取得または設定します。 Gets or sets the impersonation level for the current request.

Method

派生クラスでオーバーライドされると、要求で使用するプロトコル メソッドを取得または設定します。 When overridden in a descendant class, gets or sets the protocol method to use in this request.

PreAuthenticate

派生クラスでオーバーライドされる場合、要求を事前認証するかどうかを指定します。 When overridden in a descendant class, indicates whether to pre-authenticate the request.

Proxy

派生クラスでオーバーライドされると、インターネット リソースにアクセスするために使用するネットワーク プロキシを取得または設定します。 When overridden in a descendant class, gets or sets the network proxy to use to access this Internet resource.

RequestUri

派生クラスでオーバーライドされると、要求に関連付けられたインターネット リソースの URI を取得します。 When overridden in a descendant class, gets the URI of the Internet resource associated with the request.

Timeout

要求がタイムアウトするまでのミリ秒単位の時間を取得または設定します。 Gets or sets the length of time, in milliseconds, before the request times out.

UseDefaultCredentials

派生クラスでオーバーライドされる場合、Boolean が要求と共に送信されるかどうかを制御する DefaultCredentials 値を取得または設定します。 When overridden in a descendant class, gets or sets a Boolean value that controls whether DefaultCredentials are sent with requests.

方法

Abort()

要求を中止します。 Aborts the request.

BeginGetRequestStream(AsyncCallback, Object)

派生クラスでオーバーライドされると、GetRequestStream() メソッドの非同期バージョンを提供します。 When overridden in a descendant class, provides an asynchronous version of the GetRequestStream() method.

BeginGetResponse(AsyncCallback, Object)

派生クラスでオーバーライドされると、インターネット リソースの非同期要求を開始します。 When overridden in a descendant class, begins an asynchronous request for an Internet resource.

Create(String)

指定した URI スキーム用に新しい WebRequest のインスタンスを初期化します。 Initializes a new WebRequest instance for the specified URI scheme.

Create(Uri)

指定した URI スキーム用に新しい WebRequest のインスタンスを初期化します。 Initializes a new WebRequest instance for the specified URI scheme.

CreateDefault(Uri)

指定した URI スキーム用に新しい WebRequest のインスタンスを初期化します。 Initializes a new WebRequest instance for the specified URI scheme.

CreateHttp(String)

指定した URI 文字列用に新しい HttpWebRequest インスタンスを初期化します。 Initializes a new HttpWebRequest instance for the specified URI string.

CreateHttp(Uri)

指定した URI 用に新しい HttpWebRequest インスタンスを初期化します。 Initializes a new HttpWebRequest instance for the specified URI.

CreateObjRef(Type)

リモート オブジェクトとの通信に使用するプロキシの生成に必要な情報をすべて格納しているオブジェクトを作成します。 Creates an object that contains all the relevant information required to generate a proxy used to communicate with a remote object.

(Inherited from MarshalByRefObject)
EndGetRequestStream(IAsyncResult)

派生クラスでオーバーライドされると、インターネット リソースにデータを書き込むための Stream を返します。 When overridden in a descendant class, returns a Stream for writing data to the Internet resource.

EndGetResponse(IAsyncResult)

派生クラスでオーバーライドされると、WebResponse を返します。 When overridden in a descendant class, returns a WebResponse.

Equals(Object)

指定したオブジェクトが、現在のオブジェクトと等しいかどうかを判断します。 Determines whether the specified object is equal to the current object.

(Inherited from Object)
GetHashCode()

既定のハッシュ関数として機能します。 Serves as the default hash function.

(Inherited from Object)
GetLifetimeService()

対象のインスタンスの有効期間ポリシーを制御する、現在の有効期間サービス オブジェクトを取得します。 Retrieves the current lifetime service object that controls the lifetime policy for this instance.

(Inherited from MarshalByRefObject)
GetObjectData(SerializationInfo, StreamingContext)

SerializationInfo に、対象のオブジェクトをシリアル化するために必要なデータを設定します。 Populates a SerializationInfo with the data needed to serialize the target object.

GetRequestStream()

派生クラスでオーバーライドされると、インターネット リソースにデータを書き込むための Stream を返します。 When overridden in a descendant class, returns a Stream for writing data to the Internet resource.

GetRequestStreamAsync()

派生クラスでオーバーライドされると、インターネット リソースへのデータ書き込みの Stream を非同期操作として返します。 When overridden in a descendant class, returns a Stream for writing data to the Internet resource as an asynchronous operation.

GetResponse()

派生クラスでオーバーライドされると、インターネット要求への応答を返します。 When overridden in a descendant class, returns a response to an Internet request.

GetResponseAsync()

派生クラスでオーバーライドされると、インターネット要求への応答を非同期操作として返します。 When overridden in a descendant class, returns a response to an Internet request as an asynchronous operation.

GetSystemWebProxy()

現在の偽装ユーザーの Internet Explorer の設定で構成されたプロキシを返します。 Returns a proxy configured with the Internet Explorer settings of the currently impersonated user.

GetType()

現在のインスタンスの Type を取得します。 Gets the Type of the current instance.

(Inherited from Object)
InitializeLifetimeService()

このインスタンスの有効期間ポリシーを制御する有効期間サービス オブジェクトを取得します。 Obtains a lifetime service object to control the lifetime policy for this instance.

(Inherited from MarshalByRefObject)
MemberwiseClone()

現在の Object の簡易コピーを作成します。 Creates a shallow copy of the current Object.

(Inherited from Object)
MemberwiseClone(Boolean)

現在の MarshalByRefObject オブジェクトの簡易コピーを作成します。 Creates a shallow copy of the current MarshalByRefObject object.

(Inherited from MarshalByRefObject)
RegisterPortableWebRequestCreator(IWebRequestCreate)

IWebRequestCreate オブジェクトを登録します。 Register an IWebRequestCreate object.

RegisterPrefix(String, IWebRequestCreate)

指定した URI 用の WebRequest 派生クラスを登録します。 Registers a WebRequest descendant for the specified URI.

ToString()

現在のオブジェクトを表す文字列を返します。 Returns a string that represents the current object.

(Inherited from Object)

明示的なインターフェイスの実装

ISerializable.GetObjectData(SerializationInfo, StreamingContext)

派生クラスでオーバーライドされる場合、SerializationInfo インスタンスに、WebRequest をシリアル化するために必要なデータを設定します。 When overridden in a descendant class, populates a SerializationInfo instance with the data needed to serialize the WebRequest.

セキュリティ

WebPermission
要求された URI または要求をリダイレクトする任意の URI にアクセスします。 To access the requested URI or any URI that the request is redirected to. Connect (関連する列挙体) Associated enumeration: Connect.

適用対象

こちらもご覧ください