HttpListenerRequest Klass

Definition

Beskriver en inkommande HTTP-begäran till ett HttpListener objekt. Det går inte att ärva den här klassen.

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

Exempel

Följande kodexempel visar hur du tar emot och svarar på en HttpListenerRequest.

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

Kommentarer

När en klient skickar en begäran till en URI (Uniform Resource Identifier) som hanteras av ett HttpListener objekt, HttpListener tillhandahåller objektet ett HttpListenerContext objekt som innehåller information om avsändaren, begäran och svaret som skickas till klienten. Egenskapen HttpListenerContext.Request returnerar objektet HttpListenerRequest som beskriver begäran.

Objektet HttpListenerRequest innehåller information om begäran, till exempel begärandesträngen HttpMethod , UserAgent strängen och brödtextdata för begäran (se InputStream egenskapen).

Om du vill svara på begäran måste du hämta det associerade svaret med hjälp av Response egenskapen .

Egenskaper

Name Description
AcceptTypes

Hämtar MIME-typerna som godkänts av klienten.

ClientCertificateError

Hämtar en felkod som identifierar ett problem med den X509Certificate som tillhandahålls av klienten.

ContentEncoding

Hämtar den innehållskodning som kan användas med data som skickas med begäran.

ContentLength64

Hämtar längden på brödtextdata som ingår i begäran.

ContentType

Hämtar MIME-typen av brödtextdata som ingår i begäran.

Cookies

Hämtar cookies som skickas med begäran.

HasEntityBody

Hämtar ett Boolean värde som anger om begäran har associerade brödtextdata.

Headers

Hämtar samlingen med sidhuvudnamn/värdepar som skickas i begäran.

HttpMethod

Hämtar den HTTP-metod som anges av klienten.

InputStream

Hämtar en dataström som innehåller brödtextdata som skickas av klienten.

IsAuthenticated

Hämtar ett Boolean värde som anger om klienten som skickar den här begäran autentiseras.

IsLocal

Hämtar ett Boolean värde som anger om begäran skickas från den lokala datorn.

IsSecureConnection

Hämtar ett Boolean värde som anger om TCP-anslutningen som används för att skicka begäran använder SSL-protokollet (Secure Sockets Layer).

IsWebSocketRequest

Hämtar ett Boolean värde som anger om TCP-anslutningen var en WebSocket-begäran.

KeepAlive

Hämtar ett Boolean värde som anger om klienten begär en beständig anslutning.

LocalEndPoint

Hämtar serverns IP-adress och portnummer som begäran riktas till.

ProtocolVersion

Hämtar HTTP-versionen som används av den begärande klienten.

QueryString

Hämtar frågesträngen som ingår i begäran.

RawUrl

Hämtar den URL-information (utan värd och port) som begärs av klienten.

RemoteEndPoint

Hämtar klientens IP-adress och portnummer som begäran kommer från.

RequestTraceIdentifier

Hämtar begärandeidentifieraren för den inkommande HTTP-begäran.

ServiceName

Hämtar det tjänstleverantörsnamn (SPN) som klienten skickade på begäran.

TransportContext

TransportContext Hämtar för klientbegäran.

Url

Hämtar objektet som Uri begärs av klienten.

UrlReferrer

Hämtar URI (Uniform Resource Identifier) för resursen som hänvisade klienten till servern.

UserAgent

Hämtar användaragenten som presenteras av klienten.

UserHostAddress

Hämtar serverns IP-adress och portnummer som begäran riktas till.

UserHostName

Hämtar DNS-namnet och, om det anges, det portnummer som anges av klienten.

UserLanguages

Hämtar de naturliga språk som föredras för svaret.

Metoder

Name Description
BeginGetClientCertificate(AsyncCallback, Object)

Påbörjar en asynkron begäran för klientens X.509 v.3-certifikat.

EndGetClientCertificate(IAsyncResult)

Avslutar en asynkron begäran för klientens X.509 v.3-certifikat.

Equals(Object)

Avgör om det angivna objektet är lika med det aktuella objektet.

(Ärvd från Object)
GetClientCertificate()

Hämtar klientens X.509 v.3-certifikat.

GetClientCertificateAsync()

Hämtar klientens X.509 v.3-certifikat som en asynkron åtgärd.

GetHashCode()

Fungerar som standard-hash-funktion.

(Ärvd från Object)
GetType()

Hämtar den aktuella instansen Type .

(Ärvd från Object)
MemberwiseClone()

Skapar en ytlig kopia av den aktuella Object.

(Ärvd från Object)
ToString()

Returnerar en sträng som representerar det aktuella objektet.

(Ärvd från Object)

Gäller för

Se även