WebClient.Headers Tulajdonság
Definíció
Fontos
Egyes információk olyan, kiadás előtti termékekre vonatkoznak, amelyek a kiadásig még jelentősen módosulhatnak. A Microsoft nem vállal kifejezett vagy törvényi garanciát az itt megjelenő információért.
Lekéri vagy beállítja a kéréshez társított fejlécnév-/értékpárok gyűjteményét.
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
Tulajdonság értéke
A WebHeaderCollection kérelemhez társított fejlécnév-érték párokat tartalmazó.
Példák
Az alábbi példakód a Headers gyűjtemény használatával állítja be a HTTP-fejlécet Content-Type , hogy application/x-www-form-urlencoded, értesítse a kiszolgálót arról, hogy az űrlapadatok csatolva vannak a bejegyzéshez.
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))
Megjegyzések
Figyelmeztetés
WebRequest, HttpWebRequest, ServicePointés WebClient elavultak, és nem szabad új fejlesztésre használni őket. A HttpClient használható helyette.
A Headers tulajdonság tartalmaz egy példányt WebHeaderCollection , amely protokollfejléceket tartalmaz, amelyeket a WebClient kéréssel együtt küld el.
Egyes gyakori fejlécek korlátozottnak minősülnek, és a rendszer védi, és nem állíthatók be vagy nem módosíthatók egy WebHeaderCollection objektumban. Az objektumhoz WebHeaderCollection társított objektum egyik korlátozott fejlécének WebClient beállítására tett kísérletek később kivételt okoznak a WebClient kérés elküldésekor.
A rendszer által védett korlátozott fejlécek közé tartoznak, de nem korlátozódnak a következőkre:
Date
Host
Emellett más fejlécek is korlátozottak, ha objektumot WebClient használnak. Ezek a korlátozott fejlécek magukban foglalják, de nem korlátozódnak a következőkre:
Elfogadás
Connection
Tartalomhossz
Várakozás (ha az érték "100-continue" értékre van állítva
If-Modified-Since
Tartomány
Transfer-Encoding
Az HttpWebRequest osztály rendelkezik a fenti fejlécek beállításához szükséges tulajdonságokkal. Ha fontos, hogy egy alkalmazás beállítsa ezeket a fejléceket, akkor az HttpWebRequest osztályt kell használni az WebRequest osztály helyett.
Ne feltételezze, hogy a fejlécértékek változatlanok maradnak, mert a webkiszolgálók és a gyorsítótárak módosíthatják vagy hozzáadhatják a fejléceket egy webes kérelemhez.