次の方法で共有


HttpWebRequest.Headers プロパティ

HTTP ヘッダーを構成する名前/値ペアのコレクションを取得します。

Overrides Public Property Headers As WebHeaderCollection
[C#]
public override WebHeaderCollection Headers {get; set;}
[C++]
public: __property WebHeaderCollection* get_Headers();public: __property void set_Headers(WebHeaderCollection*);
[JScript]
public override function get Headers() : WebHeaderCollection;public override function set Headers(WebHeaderCollection);

プロパティ値

HTTP 要求のヘッダーを構成する名前/値ペアを格納している WebHeaderCollection

例外

例外の種類 条件
InvalidOperationException 要求が GetRequestStreamBeginGetRequestStreamGetResponse 、または BeginGetResponse の各メソッドの呼び出しによって開始されました。

解説

Headers コレクションは、要求に関連付けられているプロトコル ヘッダーを格納します。 Headers コレクションには格納されず、システム、プロパティ、またはメソッドのいずれかで設定される HTTP ヘッダーの一覧を次の表に示します。

ヘッダー 設定方法
Accept Accept プロパティで設定します。
Connection Connection プロパティまたは KeepAlive プロパティで設定します。
Content-Length ContentLength プロパティで設定します。
Content-Type ContentType プロパティで設定します。
Expect Expect プロパティで設定します。
Date システムにより現在の日付に設定されます。
Host システムにより現在のホスト情報に設定されます。
If-Modified-Since IfModifiedSince プロパティで設定します。
Range AddRange メソッドで設定します。
Referer Referer プロパティで設定します。
Transfer-Encoding TransferEncoding プロパティで設定します (SendChunked プロパティは true である必要があります)。
User-Agent UserAgent プロパティで設定します。

これらの保護されたヘッダーの 1 つを設定しようとすると、 Add メソッドは ArgumentException をスローします。

GetRequestStreamBeginGetRequestStreamGetResponse 、または BeginGetResponse の各メソッドの呼び出しによって開始した要求の後に Headers プロパティを変更すると、 InvalidOperationException がスローされます。

使用例

[Visual Basic, C#, C++] HTTP ヘッダーの名前/値ペアを、 Headers プロパティを使用してコンソールに出力する例を次に示します。

 
' Create a new 'HttpWebRequest' Object to the mentioned URL.
Dim myHttpWebRequest As HttpWebRequest = CType(WebRequest.Create("https://www.contoso.com"), HttpWebRequest)
' Assign the response object of 'HttpWebRequest' to a 'HttpWebResponse' variable.
Dim myHttpWebResponse As HttpWebResponse = CType(myHttpWebRequest.GetResponse(), HttpWebResponse)
Console.WriteLine(ControlChars.Cr + "The HttpHeaders are " + ControlChars.Cr + ControlChars.Cr + ControlChars.Tab + "Name" + ControlChars.Tab + ControlChars.Tab + "Value" + ControlChars.Cr + "{0}", myHttpWebRequest.Headers)

' Print the HTML contents of the page to the console. 
Dim streamResponse As Stream = myHttpWebResponse.GetResponseStream()
Dim streamRead As New StreamReader(streamResponse)
Dim readBuff(256) As [Char]
Dim count As Integer = streamRead.Read(readBuff, 0, 256)
Console.WriteLine(ControlChars.Cr + "The HTML contents of page the are  : " + ControlChars.Cr + ControlChars.Cr + " ")
While count > 0
    Dim outputData As New [String](readBuff, 0, count)
    Console.Write(outputData)
    count = streamRead.Read(readBuff, 0, 256)
End While
       ' Close the Stream object.
       streamResponse.Close()
       streamRead.Close()
       ' Release the HttpWebResponse Resource.
        myHttpWebResponse.Close()

[C#] 
// Create a new 'HttpWebRequest' Object to the mentioned URL.
HttpWebRequest myHttpWebRequest=(HttpWebRequest)WebRequest.Create("https://www.contoso.com");
// Assign the response object of 'HttpWebRequest' to a 'HttpWebResponse' variable.
HttpWebResponse myHttpWebResponse=(HttpWebResponse)myHttpWebRequest.GetResponse();
Console.WriteLine("\nThe HttpHeaders are \n\n\tName\t\tValue\n{0}",myHttpWebRequest.Headers);
// Print the HTML contents of the page to the console. 
Stream streamResponse=myHttpWebResponse.GetResponseStream();
StreamReader streamRead = new StreamReader( streamResponse );
Char[] readBuff = new Char[256];
int count = streamRead.Read( readBuff, 0, 256 );
Console.WriteLine("\nThe HTML contents of page the are  : \n\n ");    
while (count > 0) 
{
    String outputData = new String(readBuff, 0, count);
    Console.Write(outputData);
    count = streamRead.Read(readBuff, 0, 256);
}
// Close the Stream object.
streamResponse.Close();
streamRead.Close();
// Release the HttpWebResponse Resource.
myHttpWebResponse.Close();

[C++] 
// Create a new 'HttpWebRequest' Object to the mentioned URL.
HttpWebRequest* myHttpWebRequest =
   dynamic_cast<HttpWebRequest*>(WebRequest::Create(S"https://www.contoso.com"));
// Assign the response object of 'HttpWebRequest' to a 'HttpWebResponse' variable.
HttpWebResponse* myHttpWebResponse =
   dynamic_cast<HttpWebResponse*>(myHttpWebRequest->GetResponse());
Console::WriteLine(S"\nThe HttpHeaders are \n\n\tName\t\tValue\n {0}",
   myHttpWebRequest->Headers);
// Print the HTML contents of the page to the console.
Stream* streamResponse = myHttpWebResponse->GetResponseStream();
StreamReader* streamRead = new StreamReader(streamResponse);
Char readBuff[] = new Char[256];
int count = streamRead->Read(readBuff, 0, 256);
Console::WriteLine(S"\nThe HTML contents of page the are  : \n\n ");
while (count > 0) {
   String* outputData = new String(readBuff, 0, count);
   Console::Write(outputData);
   count = streamRead->Read(readBuff, 0, 256);
}
// Close the Stream object.
streamResponse->Close();
streamRead->Close();
// Release the HttpWebResponse Resource.
myHttpWebResponse->Close();

[JScript] JScript のサンプルはありません。Visual Basic、C#、および C++ のサンプルを表示するには、このページの左上隅にある言語のフィルタ ボタン 言語のフィルタ をクリックします。

必要条件

プラットフォーム: Windows 98, Windows NT 4.0, Windows Millennium Edition, Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows Server 2003 ファミリ, .NET Compact Framework - Windows CE .NET, Common Language Infrastructure (CLI) Standard

参照

HttpWebRequest クラス | HttpWebRequest メンバ | System.Net 名前空間