HttpListenerRequest 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.
Beschreibt eine eingehende HTTP-Anforderung für ein HttpListener-Objekt. Diese Klasse kann nicht vererbt werden.
public ref class HttpListenerRequest sealed
public sealed class HttpListenerRequest
type HttpListenerRequest = class
Public NotInheritable Class HttpListenerRequest
- Vererbung
-
HttpListenerRequest
Beispiele
Im folgenden Codebeispiel wird veranschaulicht, wie ein HttpListenerRequestempfangen und darauf reagiert wird.
// 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
Wenn ein Client eine Anforderung an einen URI (Uniform Resource Identifier) sendet, der von einem HttpListener Objekt behandelt wird, stellt das HttpListener ein HttpListenerContext -Objekt bereit, das Informationen über den Absender, die Anforderung und die Antwort enthält, die an den Client gesendet wird. Die HttpListenerContext.Request -Eigenschaft gibt das HttpListenerRequest -Objekt zurück, das die Anforderung beschreibt.
Das HttpListenerRequest -Objekt enthält Informationen zur Anforderung, z. B. die Anforderungszeichenfolge HttpMethod , UserAgent die Zeichenfolge und die Anforderungstextdaten (siehe die InputStream -Eigenschaft).
Um auf die Anforderung zu antworten, müssen Sie die zugeordnete Antwort mithilfe der Response -Eigenschaft abrufen.
Eigenschaften
AcceptTypes |
Ruft die vom Client akzeptierten MIME-Typen ab. |
ClientCertificateError |
Ruft einen Fehlercode ab, der ein Problem mit dem vom Client bereitgestellten X509Certificate bezeichnet. |
ContentEncoding |
Ruft die Inhaltscodierung ab, die für mit der Anforderung gesendete Daten verwendet werden kann. |
ContentLength64 |
Ruft die Länge der in der Anforderung enthaltenen Textdaten ab. |
ContentType |
Ruft den MIME-Typ der in der Anforderung enthaltenen Textdaten ab. |
Cookies |
Ruft die mit der Anforderung gesendeten Cookies ab. |
HasEntityBody |
Ruft einen Boolean-Wert ab, der angibt, ob der Anforderung Textdaten zugeordnet sind. |
Headers |
Ruft die Auflistung der in der Anforderung gesendeten Name-Wert-Paare der Header ab. |
HttpMethod |
Ruft die vom Client angegebene HTTP-Methode ab. |
InputStream |
Ruft einen Stream ab, der die vom Client gesendeten Textdaten enthält. |
IsAuthenticated |
Ruft einen Boolean-Wert ab, der angibt, ob der diese Anforderung sendende Client authentifiziert ist. |
IsLocal |
Ruft einen Boolean-Wert ab, der angibt, ob die Anforderung vom lokalen Computer gesendet wurde. |
IsSecureConnection |
Ruft einen Boolean-Wert ab, der angibt, ob die TCP-Verbindung, mit der die Anforderung gesendet wird, das SSL (Secure Sockets Layer)-Protokoll verwendet. |
IsWebSocketRequest |
Ruft einen Boolean Wert ab, der angibt, ob die TCP-Verbindung eine WebSocket-Anforderung war. |
KeepAlive |
Ruft einen Boolean-Wert ab, der angibt, ob der Client eine permanente Verbindung anfordert. |
LocalEndPoint |
Ruft die IP-Adresse und Anschlussnummer des Servers ab, an den die Anforderung gerichtet ist. |
ProtocolVersion |
Ruft die vom anfordernden Client verwendete HTTP-Version ab. |
QueryString |
Ruft die in der Anforderung enthaltene Abfragezeichenfolge ab. |
RawUrl |
Ruft die vom Client angeforderten URL-Informationen (ohne Host und Anschluss) ab. |
RemoteEndPoint |
Ruft die IP-Adresse und Anschlussnummer des Clients ab, von dem die Anforderung stammt. |
RequestTraceIdentifier |
Ruft den Anforderungsbezeichner der eingehenden HTTP-Anforderung ab. |
ServiceName |
Ruft den Dienstanbieternamen (SPN) ab, der vom Client in der Anforderung gesendet wurde. |
TransportContext |
Ruft das TransportContext für die Clientanforderung ab. |
Url |
Ruft das vom Client angeforderte Uri-Objekt ab. |
UrlReferrer |
Ruft den URI (Uniform Resource Identifier) der Ressource ab, die den Client an den Server verwiesen hat. |
UserAgent |
Ruft den vom Client dargestellten Benutzer-Agent ab. |
UserHostAddress |
Ruft die IP-Adresse und Anschlussnummer des Servers ab, an den die Anforderung gerichtet ist. |
UserHostName |
Ruft den DNS-Namen und ggf. die vom Client angegebene Anschlussnummer ab. |
UserLanguages |
Ruft die natürlichen Sprachen ab, die für die Antwort bevorzugt werden. |
Methoden
BeginGetClientCertificate(AsyncCallback, Object) |
Beginnt eine asynchrone Anforderung für das X.509 v.3-Zertifikat des Clients. |
EndGetClientCertificate(IAsyncResult) |
Beendet eine asynchrone Anforderung für das X.509 v.3-Zertifikat des Clients. |
Equals(Object) |
Bestimmt, ob das angegebene Objekt gleich dem aktuellen Objekt ist. (Geerbt von Object) |
GetClientCertificate() |
Ruft das X.509 v.3-Zertifikat des Clients ab. |
GetClientCertificateAsync() |
Ruft das X.509 v.3-Zertifikat des Client als asynchronen Vorgang ab. |
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) |
ToString() |
Gibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt. (Geerbt von Object) |