WebRequest クラス

定義

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

public ref class WebRequest abstract
public ref class WebRequest abstract : MarshalByRefObject, System::Runtime::Serialization::ISerializable
public abstract class WebRequest
public abstract class WebRequest : MarshalByRefObject, System.Runtime.Serialization.ISerializable
[System.Serializable]
public abstract class WebRequest : MarshalByRefObject, System.Runtime.Serialization.ISerializable
type WebRequest = class
type WebRequest = class
    inherit MarshalByRefObject
    interface ISerializable
[<System.Serializable>]
type WebRequest = class
    inherit MarshalByRefObject
    interface ISerializable
Public MustInherit Class WebRequest
Public MustInherit Class WebRequest
Inherits MarshalByRefObject
Implements ISerializable
継承
WebRequest
継承
派生
属性
実装

次の例では、インスタンスを作成し、応答を返す方法を示し 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.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
    End Class
End Namespace

注釈

重要

WebRequest新しい開発では、またはその派生クラスを使用しないことをお勧めします。We don't recommend that you use WebRequest or its derived classes for new development. 代わりに、クラスを使用し System.Net.Http.HttpClient ます。Instead, use the System.Net.Http.HttpClient class.

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 エラーの原因を示す値の1つです。The Status property is one of the WebExceptionStatus values that indicates the source of the error. がの場合 Status WebExceptionStatus.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. 既定値と例外の詳細については、「」や「」など、子孫クラスのドキュメントを参照してください HttpWebRequest FileWebRequestFor 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 およびの各メンバーをオーバーライドする必要があります Method RequestUri Headers ContentLength ContentType Credentials PreAuthenticate GetRequestStream() BeginGetRequestStream(AsyncCallback, Object) EndGetRequestStream(IAsyncResult) GetResponse() BeginGetResponse(AsyncCallback, Object) EndGetResponse(IAsyncResult)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). さらに、を IWebRequestCreate Create(Uri) 呼び出すときに使用されるメソッドを定義するインターフェイスの実装を提供する必要があり Create(Uri) ます。In addition, you must provide an implementation of the IWebRequestCreate interface, which defines the Create(Uri) method used when you call Create(Uri). IWebRequestCreateメソッドまたは構成ファイルを使用して、インターフェイスを実装するクラスを登録する必要があり RegisterPrefix(String, IWebRequestCreate) ます。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)

SerializationInfo クラスと StreamingContext クラスの指定したインスタンスから、WebRequest クラスの新しいインスタンスを初期化します。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.

(継承元 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.

(継承元 Object)
GetHashCode()

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

(継承元 Object)
GetLifetimeService()

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

(継承元 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.

(継承元 Object)
InitializeLifetimeService()

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

(継承元 MarshalByRefObject)
MemberwiseClone()

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

(継承元 Object)
MemberwiseClone(Boolean)

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

(継承元 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.

(継承元 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.

適用対象

こちらもご覧ください