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 unter Ergänzende API-Hinweise für HttpListener.
Konstruktoren
HttpListener() |
Initialisiert eine neue Instanz der HttpListener-Klasse. |
Eigenschaften
AuthenticationSchemes |
Ruft das Schema ab, das zum Authentifizieren von Clients verwendet wird, oder legt dieses fest. |
AuthenticationSchemeSelectorDelegate |
Ruft den Delegaten ab, der zum Bestimmen des für die Authentifizierung von Clients verwendeten Protokolls aufgerufen wird, oder legt diesen fest. |
DefaultServiceNames |
Ruft entsprechend den registrierten Präfixen eine Standardliste von Dienstanbieternamen (Service Provider Names, SPNs) ab. |
ExtendedProtectionPolicy |
Ruft die ExtendedProtectionPolicy für den erweiterten Schutz einer Sitzung ab oder legt sie fest. |
ExtendedProtectionSelectorDelegate |
Ruft den Delegaten ab, der aufgerufen wird, um die ExtendedProtectionPolicy für jede Anforderung zu bestimmen, oder legt ihn fest. |
IgnoreWriteExceptions |
Ruft einen Boolean-Wert ab, der angibt, ob die Anwendung Ausnahmen empfängt, die auftreten, wenn ein HttpListener die Antwort an den Client sendet, oder legt diesen fest. |
IsListening |
Ruft einen Wert ab, der angibt, ob der HttpListener gestartet wurde. |
IsSupported |
Ruft einen Wert ab, der angibt, ob HttpListener mit dem aktuellen Betriebssystem verwendet werden kann. |
Prefixes |
Ruft die von diesem HttpListener-Objekt behandelten URI-Präfixe (Uniform Resource Identifier) ab. |
Realm |
Ruft den Bereich oder die Ressourcenpartition ab, der bzw. die diesem HttpListener-Objekt zugeordnet ist, oder legt den Bereich bzw. die Partition fest. |
TimeoutManager |
Der Timeout-Manager für diese HttpListener Instanz . |
UnsafeConnectionNtlmAuthentication |
Ruft einen Boolean-Wert ab, der steuert, ob bei Verwendung von NTLM zusätzliche Anforderungen, die dieselbe TCP (Transmission Control Protocol)-Verbindung verwenden, authentifiziert werden müssen, oder legt diesen fest. |
Methoden
Abort() |
Beendet sofort das HttpListener-Objekt und verwirft alle Anforderungen, die sich gegenwärtig in der Warteschlange befinden. |
BeginGetContext(AsyncCallback, Object) |
Startet den asynchronen Abruf einer eingehenden Anforderung. |
Close() |
Fährt den HttpListener herunter. |
EndGetContext(IAsyncResult) |
Schließt einen asynchronen Vorgang ab, um eine eingehende Clientanforderung abzurufen. |
Equals(Object) |
Bestimmt, ob das angegebene Objekt gleich dem aktuellen Objekt ist. (Geerbt von Object) |
GetContext() |
Wartet auf eine eingehende Anforderung und wird beendet, wenn eine Anforderung empfangen wird. |
GetContextAsync() |
Wartet auf eine eingehende Anforderung als asynchrone Operation. |
GetHashCode() |
Fungiert als Standardhashfunktion. (Geerbt von Object) |
GetType() |
Ruft den Type der aktuellen Instanz ab. (Geerbt von Object) |
MemberwiseClone() |
Erstellt eine flache Kopie des aktuellen Object. (Geerbt von Object) |
Start() |
Ermöglicht das Empfangen eingehender Anforderungen durch diese Instanz. |
Stop() |
Bewirkt, dass diese Instanz keine neuen eingehenden Anforderungen mehr empfängt, und beendet die Verarbeitung aller laufenden Anforderungen. |
ToString() |
Gibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt. (Geerbt von Object) |
Explizite Schnittstellenimplementierungen
IDisposable.Dispose() |
Gibt die für dieses HttpListener-Objekt reservierten Ressourcen frei. |