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

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

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

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

注意

メソッドを Create 使用して、新しいインスタンス WebRequest を初期化します。 コンストラクターは使用 WebRequest しません。

注意

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

注意 (実装者)

から継承する場合は、 の各メンバー WebRequest をオーバーライド Method RequestUri Headers ContentLength ContentType Credentials PreAuthenticate GetRequestStream() BeginGetRequestStream(AsyncCallback, Object) EndGetRequestStream(IAsyncResult) GetResponse() する BeginGetResponse(AsyncCallback, Object) 必要があります EndGetResponse(IAsyncResult) 。 さらに、 を呼び出す際に使用するメソッドを定義する インターフェイスの IWebRequestCreate Create(Uri) 実装を指定する必要があります Create(Uri) 。 メソッドまたは構成ファイルを使用して、 IWebRequestCreate インターフェイスを実装するクラス RegisterPrefix(String, 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 をシリアル化するために必要なデータを設定します。

適用対象

こちらもご覧ください