HttpListener Klass
Definition
Viktigt
En del information gäller för förhandsversionen av en produkt och kan komma att ändras avsevärt innan produkten blir allmänt tillgänglig. Microsoft lämnar inga garantier, uttryckliga eller underförstådda, avseende informationen som visas här.
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. |