WebClient.Headers Egenskap

Definition

Hämtar eller anger en samling rubriknamn/värdepar som är associerade med begäran.

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

Egenskapsvärde

Ett WebHeaderCollection innehållande rubriknamn/värdepar som är associerade med den här begäran.

Exempel

I följande kodexempel används Headers samlingen för att ange HTTP-huvudet Content-Type till application/x-www-form-urlencoded, för att meddela servern att formulärdata är kopplade till inlägget.

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))

Kommentarer

Caution

WebRequest, HttpWebRequest, ServicePoint, och WebClient är föråldrade och du bör inte använda dem för ny utveckling. Använd HttpClient i stället.

Egenskapen Headers innehåller en WebHeaderCollection instans som innehåller protokollhuvuden WebClient som skickas med begäran.

Vissa vanliga huvuden anses vara begränsade och skyddas av systemet och kan inte anges eller ändras i ett WebHeaderCollection objekt. Alla försök att ange någon av dessa begränsade rubriker i objektet WebHeaderCollection som är associerat med ett WebClient objekt utlöser ett undantag senare när du försöker skicka WebClient begäran.

Begränsade huvuden som skyddas av systemet inkluderar, men är inte begränsade till följande:

  • Datum

  • Host

Dessutom är vissa andra rubriker också begränsade när du använder ett WebClient objekt. Dessa begränsade rubriker omfattar, men är inte begränsade till följande:

  • Acceptera

  • Anslutning

  • Innehållslängd

  • Förvänta dig (när värdet är inställt på "100-fortsätt"

  • If-Modified-Since

  • Räckvidd

  • Transfer-Encoding

Klassen HttpWebRequest har egenskaper för att ange några av ovanstående rubriker. Om det är viktigt att ett program anger dessa rubriker HttpWebRequest ska klassen användas i stället för WebRequest klassen.

Du bör inte anta att huvudvärdena förblir oförändrade eftersom webbservrar och cacheminnen kan ändras eller lägga till rubriker i en webbbegäran.

Gäller för

Se även