Auf Englisch lesen

Freigeben über


HttpWebRequest.MaximumResponseHeadersLength Eigenschaft

Definition

Ruft die maximal zulässige Länge der Antwortheader ab oder legt sie fest.

public int MaximumResponseHeadersLength { get; set; }

Eigenschaftswert

Die Länge in Kilobyte (1024 Byte) der Antwortheader.

Ausnahmen

Die Eigenschaft wird festgelegt, nachdem die Anforderung bereits übermittelt wurde.

Der Wert ist kleiner als 0.

Beispiele

Im folgenden Codebeispiel wird der Wert dieser Eigenschaft festgelegt.

using System;
using System.Net;
using System.Text;
using System.IO;

    public class Test
    {
        // Specify the URL to receive the request.
        public static void Main (string[] args)
        {
            HttpWebRequest request = (HttpWebRequest)WebRequest.Create(args[0]);

            // Set some reasonable limits on resources used by this request
            request.MaximumAutomaticRedirections = 4;
            request.MaximumResponseHeadersLength = 4;
            // Set credentials to use for this request.
            request.Credentials = CredentialCache.DefaultCredentials;
            HttpWebResponse response = (HttpWebResponse)request.GetResponse();

            Console.WriteLine("Content length is {0}", response.ContentLength);
            Console.WriteLine("Content type is {0}", response.ContentType);

            // Get the stream associated with the response.
            Stream receiveStream = response.GetResponseStream();

            // Pipes the stream to a higher level stream reader with the required encoding format.
            StreamReader readStream = new StreamReader(receiveStream, Encoding.UTF8);

            Console.WriteLine("Response stream received.");
            Console.WriteLine(readStream.ReadToEnd());
            response.Close();
            readStream.Close();
        }
    }

/*
The output from this example will vary depending on the value passed into Main
but will be similar to the following:

Content length is 1542
Content type is text/html; charset=utf-8
Response stream received.
<html>
...
</html>

*/

Hinweise

Achtung

WebRequest, HttpWebRequest, ServicePointund WebClient sind veraltet, und Sie sollten sie nicht für die neue Entwicklung verwenden. Verwenden Sie stattdessen HttpClient.

Die Länge des Antwortheaders enthält die Antwortstatuszeile und alle zusätzlichen Steuerzeichen, die als Teil des HTTP-Protokolls empfangen werden. Der Wert 0 bedeutet, dass alle Anforderungen fehlschlagen.

Wenn die MaximumResponseHeadersLength-Eigenschaft nicht explizit festgelegt ist, wird standardmäßig der Wert der eigenschaft DefaultMaximumResponseHeadersLength festgelegt.

Wenn die Länge des empfangenen Antwortheaders den Wert der eigenschaft MaximumResponseHeadersLength überschreitet, löst die methode EndGetResponse oder GetResponse einen WebException aus, wobei die eigenschaft Status auf MessageLengthLimitExceededfestgelegt ist.

Gilt für:

Produkt Versionen
.NET Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 2.0, 2.1