HttpListener Klass

Definition

Tillhandahåller en enkel, programmatiskt kontrollerad HTTP-protokolllyssnare. Det går inte att ärva den här klassen.

public ref class HttpListener sealed : IDisposable
public sealed class HttpListener : IDisposable
type HttpListener = class
    interface IDisposable
Public NotInheritable Class HttpListener
Implements IDisposable
Arv
HttpListener
Implementeringar

Exempel

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

Mer information om det här API:et finns i Kompletterande API-kommentarer för HttpListener.

Konstruktorer

Name Description
HttpListener()

Initierar en ny instans av HttpListener klassen.

Egenskaper

Name Description
AuthenticationSchemes

Hämtar eller anger det schema som används för att autentisera klienter.

AuthenticationSchemeSelectorDelegate

Hämtar eller anger det ombud som anropas för att fastställa vilket protokoll som används för att autentisera klienter.

DefaultServiceNames

Hämtar en standardlista över tjänstleverantörsnamn (SPN) som bestäms av registrerade prefix.

ExtendedProtectionPolicy

Hämtar eller ställer in som ExtendedProtectionPolicy ska användas för utökat skydd för en session.

ExtendedProtectionSelectorDelegate

Hämtar eller ställer in ombudet som anropas för att fastställa vilken ExtendedProtectionPolicy som ska användas för varje begäran.

IgnoreWriteExceptions

Hämtar eller anger ett Boolean värde som anger om programmet tar emot undantag som inträffar när ett HttpListener skickar svaret till klienten.

IsListening

Hämtar ett värde som anger om HttpListener har startats.

IsSupported

Hämtar ett värde som anger om HttpListener kan användas med det aktuella operativsystemet.

Prefixes

Hämtar de URI-prefix (Uniform Resource Identifier) som hanteras av det här HttpListener objektet.

Realm

Hämtar eller anger sfären, eller resurspartitionen, som är associerad med det här HttpListener objektet.

TimeoutManager

Timeout-chefen för den här HttpListener instansen.

UnsafeConnectionNtlmAuthentication

Hämtar eller anger ett Boolean värde som styr om ytterligare begäranden som använder samma TCP-anslutning (Transmission Control Protocol) måste autentiseras när NTLM används.

Metoder

Name Description
Abort()

Stänger av HttpListener objektet omedelbart och tar bort alla för närvarande köade begäranden.

BeginGetContext(AsyncCallback, Object)

Börjar asynkront hämta en inkommande begäran.

Close()

Stänger av HttpListener.

EndGetContext(IAsyncResult)

Slutför en asynkron åtgärd för att hämta en inkommande klientbegäran.

Equals(Object)

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

(Ärvd från Object)
GetContext()

Väntar på en inkommande begäran och returnerar när en tas emot.

GetContextAsync()

Väntar på en inkommande begäran 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)
Start()

Tillåter att den här instansen tar emot inkommande begäranden.

Stop()

Gör att den här instansen slutar ta emot nya inkommande begäranden och avslutar bearbetningen av alla pågående begäranden.

ToString()

Returnerar en sträng som representerar det aktuella objektet.

(Ärvd från Object)

Explicita gränssnittsimplementeringar

Name Description
IDisposable.Dispose()

Frigör de resurser som innehas av det här HttpListener objektet.

Gäller för

Se även