Freigeben über


HttpListenerRequest Klasse

Definition

Beschreibt eine eingehende HTTP-Anforderung an ein HttpListener Objekt. Diese Klasse kann nicht vererbt werden.

public ref class HttpListenerRequest sealed
public sealed class HttpListenerRequest
type HttpListenerRequest = class
Public NotInheritable Class HttpListenerRequest
Vererbung
HttpListenerRequest

Beispiele

Im folgenden Codebeispiel wird veranschaulicht, wie Sie ein Objekt HttpListenerRequestempfangen und darauf reagieren.

// This example requires the System and System.Net namespaces.
public static void SimpleListenerExample(string[] prefixes)
{
    if (!HttpListener.IsSupported)
    {
        Console.WriteLine ("Windows XP SP2 or Server 2003 is required to use the HttpListener class.");
        return;
    }
    // URI prefixes are required,
    // for example "http://contoso.com:8080/index/".
    if (prefixes == null || prefixes.Length == 0)
      throw new ArgumentException("prefixes");

    // Create a listener.
    HttpListener listener = new HttpListener();
    // Add the prefixes.
    foreach (string s in prefixes)
    {
        listener.Prefixes.Add(s);
    }
    listener.Start();
    Console.WriteLine("Listening...");
    // Note: The GetContext method blocks while waiting for a request.
    HttpListenerContext context = listener.GetContext();
    HttpListenerRequest request = context.Request;
    // Obtain a response object.
    HttpListenerResponse response = context.Response;
    // Construct a response.
    string responseString = "<HTML><BODY> Hello world!</BODY></HTML>";
    byte[] buffer = System.Text.Encoding.UTF8.GetBytes(responseString);
    // Get a response stream and write the response to it.
    response.ContentLength64 = buffer.Length;
    System.IO.Stream output = response.OutputStream;
    output.Write(buffer,0,buffer.Length);
    // You must close the output stream.
    output.Close();
    listener.Stop();
}
Public Shared Sub SimpleListenerExample(prefixes As String())
    If Not HttpListener.IsSupported Then
        Console.WriteLine("Windows XP SP2 or Server 2003 is required to use the HttpListener class.")
        Return
    End If
    ' URI prefixes are required,
    ' for example "http://contoso.com:8080/index/".
    If prefixes Is Nothing Or prefixes.Length = 0 Then
        Throw New ArgumentException("prefixes")
    End If

    ' Create a listener
    Dim listener = New HttpListener()

    For Each s As String In prefixes
        listener.Prefixes.Add(s)
    Next
    listener.Start()
    Console.WriteLine("Listening...")
    ' Note: The GetContext method blocks while waiting for a request.
    Dim context As HttpListenerContext = listener.GetContext()
    Console.WriteLine("Listening...")
    ' Obtain a response object
    Dim request As HttpListenerRequest = context.Request
    ' Construct a response.
    Dim response As HttpListenerResponse = context.Response
    Dim responseString As String = "<HTML><BODY> Hello world!</BODY></HTML>"
    Dim buffer As Byte() = System.Text.Encoding.UTF8.GetBytes(responseString)
    ' Get a response stream and write the response to it.
    response.ContentLength64 = buffer.Length
    Dim output As System.IO.Stream = response.OutputStream
    output.Write(buffer, 0, buffer.Length)
    'You must close the output stream.
    output.Close()
    listener.Stop()
End Sub

Hinweise

Wenn ein Client eine Anforderung an einen von einem HttpListener Objekt verarbeiteten URI (Uniform Resource Identifier) sendet, stellt das HttpListener Objekt ein HttpListenerContext Objekt bereit, das Informationen über den Absender, die Anforderung und die Antwort enthält, die an den Client gesendet wird. Die HttpListenerContext.Request Eigenschaft gibt das HttpListenerRequest Objekt zurück, das die Anforderung beschreibt.

Das HttpListenerRequest Objekt enthält Informationen zur Anforderung, z. B. die Anforderungszeichenfolge HttpMethod , UserAgent Zeichenfolge und Anforderungstextdaten (siehe InputStream Eigenschaft).

Um auf die Anforderung zu antworten, müssen Sie die zugeordnete Antwort mithilfe der Response Eigenschaft abrufen.

Eigenschaften

Name Beschreibung
AcceptTypes

Ruft die MIME-Typen ab, die vom Client akzeptiert werden.

ClientCertificateError

Ruft einen Fehlercode ab, der ein Problem mit dem X509Certificate vom Client bereitgestellten identifiziert.

ContentEncoding

Ruft die Inhaltscodierung ab, die mit Daten verwendet werden kann, die mit der Anforderung gesendet werden.

ContentLength64

Ruft die Länge der Textkörperdaten ab, die in der Anforderung enthalten sind.

ContentType

Ruft den MIME-Typ der Textkörperdaten ab, die in der Anforderung enthalten sind.

Cookies

Ruft die Mit der Anforderung gesendeten Cookies ab.

HasEntityBody

Ruft einen Boolean Wert ab, der angibt, ob die Anforderung Textkörperdaten zugeordnet hat.

Headers

Ruft die Auflistung von Headernamen-Wert-Paaren ab, die in der Anforderung gesendet werden.

HttpMethod

Ruft die vom Client angegebene HTTP-Methode ab.

InputStream

Ruft einen Datenstrom ab, der die vom Client gesendeten Textkörperdaten enthält.

IsAuthenticated

Ruft einen Boolean Wert ab, der angibt, ob der Client, der diese Anforderung sendet, authentifiziert ist.

IsLocal

Ruft einen Boolean Wert ab, der angibt, ob die Anforderung vom lokalen Computer gesendet wird.

IsSecureConnection

Ruft einen Boolean Wert ab, der angibt, ob die TCP-Verbindung, die zum Senden der Anforderung verwendet wird, das SSL-Protokoll (Secure Sockets Layer) verwendet.

IsWebSocketRequest

Ruft einen Boolean Wert ab, der angibt, ob die TCP-Verbindung eine WebSocket-Anforderung war.

KeepAlive

Ruft einen Boolean Wert ab, der angibt, ob der Client eine dauerhafte Verbindung anfordert.

LocalEndPoint

Ruft die Server-IP-Adresse und die Portnummer ab, an die die Anforderung weitergeleitet wird.

ProtocolVersion

Ruft die HTTP-Version ab, die vom anfordernden Client verwendet wird.

QueryString

Ruft die Abfragezeichenfolge ab, die in der Anforderung enthalten ist.

RawUrl

Ruft die URL-Informationen (ohne den Host und Port) ab, die vom Client angefordert werden.

RemoteEndPoint

Ruft die Client-IP-Adresse und die Portnummer ab, von der die Anforderung stammt.

RequestTraceIdentifier

Ruft den Anforderungsbezeichner der eingehenden HTTP-Anforderung ab.

ServiceName

Ruft den Dienstanbieternamen (SERVICE Provider Name, SPN) ab, den der Client an die Anforderung gesendet hat.

TransportContext

Ruft die TransportContext für die Clientanforderung ab.

Url

Ruft das Uri vom Client angeforderte Objekt ab.

UrlReferrer

Ruft den URI (Uniform Resource Identifier) der Ressource ab, die den Client auf den Server verweist.

UserAgent

Ruft den vom Client dargestellten Benutzer-Agent ab.

UserHostAddress

Ruft die Server-IP-Adresse und die Portnummer ab, an die die Anforderung weitergeleitet wird.

UserHostName

Ruft den DNS-Namen und ggf. die vom Client angegebene Portnummer ab.

UserLanguages

Ruft die natürlichen Sprachen ab, die für die Antwort bevorzugt werden.

Methoden

Name Beschreibung
BeginGetClientCertificate(AsyncCallback, Object)

Startet eine asynchrone Anforderung für das X.509 v.3-Zertifikat des Clients.

EndGetClientCertificate(IAsyncResult)

Beendet eine asynchrone Anforderung für das X.509 v.3-Zertifikat des Clients.

Equals(Object)

Bestimmt, ob das angegebene Objekt dem aktuellen Objekt entspricht.

(Geerbt von Object)
GetClientCertificate()

Ruft das X.509 v.3-Zertifikat des Clients ab.

GetClientCertificateAsync()

Ruft das X.509 v.3-Zertifikat des Clients als asynchronen Vorgang ab.

GetHashCode()

Dient als Standardhashfunktion.

(Geerbt von Object)
GetType()

Ruft die Type der aktuellen Instanz ab.

(Geerbt von Object)
MemberwiseClone()

Erstellt eine flache Kopie der aktuellen Object.

(Geerbt von Object)
ToString()

Gibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt.

(Geerbt von Object)

Gilt für:

Weitere Informationen