WebRequest クラス

定義

Uniform Resource Identifier (URI) に対する要求を実行します。 これは abstract クラスです。

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 返す方法を示しています。

#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 しないでください。 代わりに、 クラスを使用します System.Net.Http.HttpClient

WebRequest は の abstract 基底クラスです。インターネットからデータにアクセスするための NET の要求/応答モデル。 要求/応答モデルを使用するアプリケーションは、プロトコルに依存しない方法でインターネットからデータを要求できます。この方法では、アプリケーションは クラスのインスタンスで動作し、プロトコル固有の WebRequest 子孫クラスは要求の詳細を実行します。

要求は、アプリケーションから特定の URI (サーバー上の Web ページなど) に送信されます。 URI は、アプリケーションに登録されている子孫の WebRequest リストから作成する適切な子孫クラスを決定します。 WebRequest 子孫は通常、HTTP や FTP などの特定のプロトコルを処理するために登録されますが、サーバー上の特定のサーバーまたはパスへの要求を処理するために登録できます。

クラスは WebRequestWebException インターネット リソースへのアクセス中にエラーが発生したときに をスローします。 プロパティは Status 、エラーの WebExceptionStatus 原因を示す値の 1 つです。 が のWebExceptionStatus.ProtocolError場合StatusResponseプロパティにはインターネット リソースから受信した が含まれますWebResponse

WebRequestクラスは abstract クラスであるため、実行時のインスタンスの実際のWebRequest動作は、メソッドによって返される子孫クラスによってCreate決定されます。 既定値と例外の詳細については、 や などのHttpWebRequestFileWebRequest子孫クラスのドキュメントを参照してください。

Note

メソッドを Create 使用して新しい WebRequest インスタンスを初期化します。 コンストラクターは WebRequest 使用しないでください。

Note

WebRequest オブジェクトを作成するアプリケーションが Normal ユーザーの資格情報を使用して実行される場合、アプリケーションはローカル コンピューター ストアにインストールされている証明書にアクセスできません。そのためには、ユーザーに明示的にアクセス許可が付与されていない限り、アプリケーションはアクセスできません。

注意 (実装者)

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

コンストラクター

WebRequest()
古い.

WebRequest クラスの新しいインスタンスを初期化します。

WebRequest(SerializationInfo, StreamingContext)
古い.

SerializationInfo クラスと StreamingContext クラスの指定したインスタンスから、WebRequest クラスの新しいインスタンスを初期化します。

プロパティ

AuthenticationLevel

この要求で使用する認証レベルおよび偽装レベルを示す値を取得または設定します。

CachePolicy

この要求のキャッシュ ポリシーを取得または設定します。

ConnectionGroupName

派生クラスでオーバーライドされると、要求で使用する接続グループの名前を取得または設定します。

ContentLength

派生クラスでオーバーライドされると、送信している要求データのコンテンツ長を取得または設定します。

ContentType

派生クラスでオーバーライドされると、送信している要求データのコンテンツ タイプを取得または設定します。

CreatorInstance
古い.

派生クラスでオーバーライドされると、IWebRequestCreate クラスから派生するファクトリ オブジェクトを取得します。このクラスは、指定 URI に対して要求を行うためにインスタンス化される WebRequest を作成するために使用されます。

Credentials

派生クラスでオーバーライドされると、インターネット リソースを使用して要求を認証するために使用されるネットワーク資格情報を取得または設定します。

DefaultCachePolicy

この要求の既定のキャッシュ ポリシーを取得または設定します。

DefaultWebProxy

グローバル HTTP プロキシを取得または設定します。

Headers

派生クラスでオーバーライドされると、要求に関連付けられたヘッダーの名前/値ペアのコレクションを取得または設定します。

ImpersonationLevel

現在の要求に対する偽装レベルを取得または設定します。

Method

派生クラスでオーバーライドされると、要求で使用するプロトコル メソッドを取得または設定します。

PreAuthenticate

派生クラスでオーバーライドされる場合、要求を事前認証するかどうかを指定します。

Proxy

派生クラスでオーバーライドされると、インターネット リソースにアクセスするために使用するネットワーク プロキシを取得または設定します。

RequestUri

派生クラスでオーバーライドされると、要求に関連付けられたインターネット リソースの URI を取得します。

Timeout

要求がタイムアウトするまでのミリ秒単位の時間を取得または設定します。

UseDefaultCredentials

派生クラスでオーバーライドされる場合、Boolean が要求と共に送信されるかどうかを制御する DefaultCredentials 値を取得または設定します。

メソッド

Abort()

要求を中止します。

BeginGetRequestStream(AsyncCallback, Object)

派生クラスでオーバーライドされると、GetRequestStream() メソッドの非同期バージョンを提供します。

BeginGetResponse(AsyncCallback, Object)

派生クラスでオーバーライドされると、インターネット リソースの非同期要求を開始します。

Create(String)
古い.

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

Create(Uri)
古い.

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

CreateDefault(Uri)
古い.

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

CreateHttp(String)
古い.

指定した URI 文字列用に新しい HttpWebRequest インスタンスを初期化します。

CreateHttp(Uri)
古い.

指定した URI 用に新しい HttpWebRequest インスタンスを初期化します。

CreateObjRef(Type)

リモート オブジェクトとの通信に使用するプロキシの生成に必要な情報をすべて格納しているオブジェクトを作成します。

(継承元 MarshalByRefObject)
EndGetRequestStream(IAsyncResult)

派生クラスでオーバーライドされると、インターネット リソースにデータを書き込むための Stream を返します。

EndGetResponse(IAsyncResult)

派生クラスでオーバーライドされると、WebResponse を返します。

Equals(Object)

指定されたオブジェクトが現在のオブジェクトと等しいかどうかを判断します。

(継承元 Object)
GetHashCode()

既定のハッシュ関数として機能します。

(継承元 Object)
GetLifetimeService()
古い.

対象のインスタンスの有効期間ポリシーを制御する、現在の有効期間サービス オブジェクトを取得します。

(継承元 MarshalByRefObject)
GetObjectData(SerializationInfo, StreamingContext)
古い.

SerializationInfo に、オブジェクトをシリアル化するために必要なデータを設定します。

GetRequestStream()

派生クラスでオーバーライドされると、インターネット リソースにデータを書き込むための Stream を返します。

GetRequestStreamAsync()

派生クラスでオーバーライドされると、インターネット リソースへのデータ書き込みの Stream を非同期操作として返します。

GetResponse()

派生クラスでオーバーライドされると、インターネット要求への応答を返します。

GetResponseAsync()

派生クラスでオーバーライドされると、インターネット要求への応答を非同期操作として返します。

GetSystemWebProxy()

現在の偽装ユーザーの Internet Explorer の設定で構成されたプロキシを返します。

GetType()

現在のインスタンスの Type を取得します。

(継承元 Object)
InitializeLifetimeService()
古い.

このインスタンスの有効期間ポリシーを制御する有効期間サービス オブジェクトを取得します。

(継承元 MarshalByRefObject)
MemberwiseClone()

現在の Object の簡易コピーを作成します。

(継承元 Object)
MemberwiseClone(Boolean)

現在の MarshalByRefObject オブジェクトの簡易コピーを作成します。

(継承元 MarshalByRefObject)
RegisterPortableWebRequestCreator(IWebRequestCreate)
古い.

IWebRequestCreate オブジェクトを登録します。

RegisterPrefix(String, IWebRequestCreate)

指定した URI 用の WebRequest 派生クラスを登録します。

ToString()

現在のオブジェクトを表す文字列を返します。

(継承元 Object)

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

ISerializable.GetObjectData(SerializationInfo, StreamingContext)
古い.

派生クラスでオーバーライドされる場合、SerializationInfo インスタンスに、WebRequest をシリアル化するために必要なデータを設定します。

適用対象

こちらもご覧ください