WebClient.Headers Eigenschaft
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Ruft eine Auflistung der Name-Wert-Paare für Header auf, die der Anforderung zugeordnet sind, oder legt diese fest.
public:
property System::Net::WebHeaderCollection ^ Headers { System::Net::WebHeaderCollection ^ get(); void set(System::Net::WebHeaderCollection ^ value); };
public System.Net.WebHeaderCollection Headers { get; set; }
member this.Headers : System.Net.WebHeaderCollection with get, set
Public Property Headers As WebHeaderCollection
Eigenschaftswert
Eine WebHeaderCollection mit den dieser Anforderung zugeordneten Name-Wert-Paaren für Header.
Beispiele
Im folgenden Codebeispiel wird die Headers Auflistung verwendet, um den HTTP-Header Content-Type
auf festzulegen, um application/x-www-form-urlencoded,
den Server zu benachrichtigen, dass Formulardaten an den Post angefügt sind.
String^ uriString;
Console::Write( "\nPlease enter the URI to post data to {for example, http://www.contoso.com}: " );
uriString = Console::ReadLine();
// Create a new WebClient instance.
WebClient^ myWebClient = gcnew WebClient;
Console::WriteLine( "\nPlease enter the data to be posted to the URI {0}:", uriString );
String^ postData = Console::ReadLine();
myWebClient->Headers->Add( "Content-Type", "application/x-www-form-urlencoded" );
// Displays the headers in the request
Console::Write( "Resulting Request Headers: ");
Console::WriteLine(myWebClient->Headers);
// Apply ASCII Encoding to obtain the String^ as a Byte array.
array<Byte>^ byteArray = Encoding::ASCII->GetBytes( postData );
Console::WriteLine( "Uploading to {0} ...", uriString );
// Upload the input String* using the HTTP 1.0 POST method.
array<Byte>^responseArray = myWebClient->UploadData( uriString, "POST", byteArray );
// Decode and display the response.
Console::WriteLine( "\nResponse received was {0}",
Encoding::ASCII->GetString( responseArray ) );
string uriString;
Console.Write("\nPlease enter the URI to post data to {for example, http://www.contoso.com} : ");
uriString = Console.ReadLine();
// Create a new WebClient instance.
WebClient myWebClient = new WebClient();
Console.WriteLine("\nPlease enter the data to be posted to the URI {0}:",uriString);
string postData = Console.ReadLine();
myWebClient.Headers.Add("Content-Type","application/x-www-form-urlencoded");
// Display the headers in the request
Console.Write("Resulting Request Headers: ");
Console.WriteLine(myWebClient.Headers.ToString());
// Apply ASCII Encoding to obtain the string as a byte array.
byte[] byteArray = Encoding.ASCII.GetBytes(postData);
Console.WriteLine("Uploading to {0} ...", uriString);
// Upload the input string using the HTTP 1.0 POST method.
byte[] responseArray = myWebClient.UploadData(uriString,"POST",byteArray);
// Decode and display the response.
Console.WriteLine("\nResponse received was {0}",
Encoding.ASCII.GetString(responseArray));
Dim uriString As String
Console.Write(ControlChars.Cr + "Please enter the URI to post data to{for example, http://www.contoso.com} : ")
uriString = Console.ReadLine()
' Create a new WebClient instance.
Dim myWebClient As New WebClient()
Console.WriteLine(ControlChars.Cr + "Please enter the data to be posted to the URI {0}:", uriString)
Dim postData As String = Console.ReadLine()
myWebClient.Headers.Add("Content-Type", "application/x-www-form-urlencoded")
' Display the headers in the request
Console.Write("Resulting Request Headers: ")
Console.Writeline(myWebClient.Headers.ToString())
' Apply ASCII Encoding to obtain the string as a byte array.
Dim byteArray As Byte() = Encoding.ASCII.GetBytes(postData)
Console.WriteLine("Uploading to {0} ...", uriString)
' Upload the input string using the HTTP 1.0 POST method.
Dim responseArray As Byte() = myWebClient.UploadData(uriString, "POST", byteArray)
' Decode and display the response.
Console.WriteLine(ControlChars.Cr + "Response received was :{0}", Encoding.ASCII.GetString(responseArray))
Hinweise
Die Headers -Eigenschaft enthält eine WebHeaderCollection Instanz mit Protokollheadern, die mit WebClient der Anforderung gesendet werden.
Einige gängige Header gelten als eingeschränkt und werden vom System geschützt und können nicht in einem WebHeaderCollection Objekt festgelegt oder geändert werden. Jeder Versuch, einen dieser eingeschränkten Header im Objekt festzulegen, das WebHeaderCollection einem WebClient Objekt zugeordnet ist, löst später eine Ausnahme aus, wenn versucht wird, die WebClient Anforderung zu senden.
Eingeschränkte Header, die vom System geschützt werden, umfassen folgendes, sind jedoch nicht beschränkt auf Folgendes:
Datum
Host
Darüber hinaus sind einige andere Header auch eingeschränkt, wenn ein WebClient -Objekt verwendet wird. Diese eingeschränkten Header umfassen Folgendes, sind jedoch nicht beschränkt auf Folgendes:
Akzeptieren
Verbindung
Content-Length
Erwarten (wenn der Wert auf "100-continue" festgelegt ist
If-Modified-Since
Bereich
Transfer-Encoding
Die HttpWebRequest -Klasse verfügt über Eigenschaften zum Festlegen einiger der oben genannten Header. Wenn es für eine Anwendung wichtig ist, diese Header festzulegen, sollte die HttpWebRequest -Klasse anstelle der WebRequest -Klasse verwendet werden.
Sie sollten nicht davon ausgehen, dass die Headerwerte unverändert bleiben, da Webserver und Caches Header einer Webanforderung ändern oder hinzufügen können.
Gilt für:
Weitere Informationen
Feedback
Feedback senden und anzeigen für