HttpListener Klasse
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Stellt einen einfachen, programmgesteuerten HTTP-Protokolllistener bereit. Diese Klasse kann nicht vererbt werden.
public ref class HttpListener sealed : IDisposable
public sealed class HttpListener : IDisposable
type HttpListener = class
interface IDisposable
Public NotInheritable Class HttpListener
Implements IDisposable
- Vererbung
-
HttpListener
- Implementiert
Beispiele
// 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
Weitere Informationen zu dieser API finden Sie in den ergänzenden API-Hinweisen für HttpListener.
Konstruktoren
| Name | Beschreibung |
|---|---|
| HttpListener() |
Initialisiert eine neue Instanz der HttpListener-Klasse. |
Eigenschaften
| Name | Beschreibung |
|---|---|
| AuthenticationSchemes |
Ruft ab oder legt das Schema fest, das zum Authentifizieren von Clients verwendet wird. |
| AuthenticationSchemeSelectorDelegate |
Ruft den aufgerufenen Delegaten ab, um das Protokoll zu bestimmen, das für die Authentifizierung von Clients verwendet wird, oder legt diesen fest. |
| DefaultServiceNames |
Ruft eine Standardliste von Dienstanbieternamen (SPNs) ab, die durch registrierte Präfixe bestimmt wird. |
| ExtendedProtectionPolicy |
Ruft den erweiterten Schutz für eine Sitzung ab oder legt sie ExtendedProtectionPolicy fest. |
| ExtendedProtectionSelectorDelegate |
Ruft den aufgerufenen Delegaten ab, um die ExtendedProtectionPolicy für jede Anforderung zu verwendende Stellvertretung zu bestimmen, oder legt diesen fest. |
| IgnoreWriteExceptions |
Dient zum Abrufen oder Festlegen eines Boolean Werts, der angibt, ob Ihre Anwendung Ausnahmen empfängt, die auftreten, wenn eine HttpListener Antwort an den Client gesendet wird. |
| IsListening |
Ruft einen Wert ab, der angibt, ob HttpListener gestartet wurde. |
| IsSupported |
Ruft einen Wert ab, der angibt, ob HttpListener mit dem aktuellen Betriebssystem verwendet werden kann. |
| Prefixes |
Ruft die URI-Präfixe (Uniform Resource Identifier) ab, die von diesem HttpListener Objekt behandelt werden. |
| Realm |
Ruft den Bereich oder die Ressourcenpartition ab, die diesem HttpListener Objekt zugeordnet ist, oder legt diesen fest. |
| TimeoutManager |
Der Timeout-Manager für diese HttpListener Instanz. |
| UnsafeConnectionNtlmAuthentication |
Dient zum Abrufen oder Festlegen eines Boolean Werts, der steuert, ob bei Verwendung von NTLM zusätzliche Anforderungen mit derselben TCP-Verbindung (Transmission Control Protocol) für die Authentifizierung erforderlich sind. |
Methoden
| Name | Beschreibung |
|---|---|
| Abort() |
Beendet das HttpListener Objekt sofort, wobei alle aktuell in die Warteschlange gestellten Anforderungen verworfen werden. |
| BeginGetContext(AsyncCallback, Object) |
Beginnt asynchrones Abrufen einer eingehenden Anforderung. |
| Close() |
Beendet das HttpListener. |
| EndGetContext(IAsyncResult) |
Führt einen asynchronen Vorgang aus, um eine eingehende Clientanforderung abzurufen. |
| Equals(Object) |
Bestimmt, ob das angegebene Objekt dem aktuellen Objekt entspricht. (Geerbt von Object) |
| GetContext() |
Wartet auf eine eingehende Anforderung und gibt zurück, wenn eine empfangen wird. |
| GetContextAsync() |
Wartet auf eine eingehende Anforderung als asynchroner Vorgang. |
| 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) |
| Start() |
Ermöglicht dieser Instanz, eingehende Anforderungen zu empfangen. |
| Stop() |
Bewirkt, dass diese Instanz den Empfang neuer eingehender Anforderungen beendet und die Verarbeitung aller laufenden Anforderungen beendet. |
| ToString() |
Gibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt. (Geerbt von Object) |
Explizite Schnittstellenimplementierungen
| Name | Beschreibung |
|---|---|
| IDisposable.Dispose() |
Gibt die Ressourcen frei, die von diesem HttpListener Objekt gehalten werden. |