Freigeben über


HttpWebRequest.Headers-Eigenschaft

Gibt eine Auflistung der Name-Wert-Paare an, aus denen sich die HTTP-Header zusammensetzen.

Namespace: System.Net
Assembly: System (in system.dll)

Syntax

'Declaration
Public Overrides Property Headers As WebHeaderCollection
'Usage
Dim instance As HttpWebRequest
Dim value As WebHeaderCollection

value = instance.Headers

instance.Headers = value
public override WebHeaderCollection Headers { get; set; }
public:
virtual property WebHeaderCollection^ Headers {
    WebHeaderCollection^ get () override;
    void set (WebHeaderCollection^ value) override;
}
/** @property */
public WebHeaderCollection get_Headers ()

/** @property */
public void set_Headers (WebHeaderCollection value)
public override function get Headers () : WebHeaderCollection

public override function set Headers (value : WebHeaderCollection)

Eigenschaftenwert

Eine WebHeaderCollection mit den Name-Wert-Paaren, aus denen sich die Header für die HTTP-Anforderung zusammensetzen.

Ausnahmen

Ausnahmetyp Bedingung

InvalidOperationException

Die Anforderung wurde durch Aufrufen der GetRequestStream-Methode, der BeginGetRequestStream-Methode, der GetResponse-Methode oder der BeginGetResponse-Methode gestartet.

Hinweise

Die Headers-Auflistung enthält die Protokollheader, die der Anforderung zugeordnet sind. Die folgende Tabelle enthält die HTTP-Header, die nicht in der Headers-Auflistung gespeichert sind, sondern entweder durch das System oder durch Eigenschaften oder Methoden festgelegt werden.

Header

Festlegung

Accept

Durch die Accept-Eigenschaft festgelegt.

Connection

Durch die Connection-Eigenschaft und die KeepAlive-Eigenschaft festgelegt.

Content-Length

Durch die ContentLength-Eigenschaft festgelegt.

Content-Type

Durch die ContentType-Eigenschaft festgelegt.

Expect

Durch die Expect-Eigenschaft festgelegt.

Date

Durch das System auf das aktuelle Datum festgelegt.

Host

Durch das System auf die aktuellen Hostinformationen festgelegt.

If-Modified-Since

Durch die IfModifiedSince-Eigenschaft festgelegt.

Range

Durch die AddRange-Methode festgelegt.

Referer

Durch die Referer-Eigenschaft festgelegt.

Transfer-Encoding

Durch die TransferEncoding-Eigenschaft festgelegt (die SendChunked-Eigenschaft muss true sein).

User-Agent

Durch die UserAgent-Eigenschaft festgelegt.

Die Add-Methode löst eine ArgumentException aus, wenn Sie einen dieser geschützten Header festlegen.

Wenn die Headers-Eigenschaft geändert wird, nachdem die Anforderung durch den Aufruf der GetRequestStream-Methode, der BeginGetRequestStream-Methode, der GetResponse-Methode oder der BeginGetResponse-Methode gestartet wurde, wird eine InvalidOperationException ausgelöst.

Gehen Sie nicht davon aus, dass die Headerwerte unverändert bleiben, da Webserver und Caches möglicherweise Header ändern oder zu Webanforderungen hinzufügen.

Beispiel

Im folgenden Codebeispiel werden mithilfe der Headers-Eigenschaft die Name-Wert-Paare für HTTP-Header auf der Konsole ausgegeben.

     ' 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()
// 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();
// 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 = gcnew StreamReader( streamResponse );
array<Char>^ readBuff = gcnew array<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 = gcnew String( readBuff,0,count );
   Console::Write( outputData );
   count = streamRead->Read( readBuff, 0, 256 );
}
streamResponse->Close();
streamRead->Close();
// Release the HttpWebResponse Resource.
myHttpWebResponse->Close();
// 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.get_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();

Plattformen

Windows 98, Windows 2000 SP4, Windows CE, Windows Millennium Edition, Windows Mobile für Pocket PC, Windows Mobile für Smartphone, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition

.NET Framework unterstützt nicht alle Versionen sämtlicher Plattformen. Eine Liste der unterstützten Versionen finden Sie unter Systemanforderungen.

Versionsinformationen

.NET Framework

Unterstützt in: 2.0, 1.1, 1.0

.NET Compact Framework

Unterstützt in: 2.0, 1.0

Siehe auch

Referenz

HttpWebRequest-Klasse
HttpWebRequest-Member
System.Net-Namespace