Diese Dokumentation wurde archiviert und wird nicht länger gepflegt.

HttpListenerResponse-Klasse

Stellt eine Antwort auf eine Anforderung dar, die von einem HttpListener-Objekt behandelt wird.

Namespace: System.Net
Assembly: System (in system.dll)

public sealed class HttpListenerResponse : IDisposable
public final class HttpListenerResponse implements IDisposable
public final class HttpListenerResponse implements IDisposable
Nicht zutreffend.

Wenn ein Client eine Anforderung einer von einem HttpListener-Objekt behandelten Ressource ausführt, werden die Anforderung und die Antwort für das HttpListenerContext-Objekt verfügbar gemacht. Die Anforderung wird durch ein HttpListenerRequest-Objekt dargestellt und ist in der HttpListenerContext.Request-Eigenschaft verfügbar. Die Antwort wird durch ein HttpListenerResponse-Objekt dargestellt und ist in der HttpListenerContext.Response-Eigenschaft verfügbar.

Sie können die Antwort anpassen, indem Sie verschiedene Eigenschaften, z. B. StatusCode, StatusDescription und Cookies, festlegen. Verwenden Sie die HttpListenerResponse.OutputStream-Eigenschaft, um eine Stream-Instanz abzurufen, in die Antwortdaten geschrieben werden können. Senden Sie zum Abschluss die Antwortdaten an den Client, indem Sie die Close-Methode aufrufen.

Im folgenden Codebeispiel wird das Antworten auf eine Clientanforderung veranschaulicht.

// 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();
}

// This example requires the System and System.Net namespaces.
public static void SimpleListenerExample(String prefixes[])
{
    if (!(HttpListener.get_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.get_Length() == 0) {
        throw new ArgumentException("prefixes");
    }
    // Create a listener.
    HttpListener listener = new HttpListener();
    // Add the prefixes.
    for (int iCtr = 0; iCtr < prefixes.get_Length(); iCtr++) {
        String s = prefixes[iCtr];
        listener.get_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.get_Request();
    // Obtain a response object.
    HttpListenerResponse response = context.get_Response();
    // Construct a response.
    String responseString = "<HTML><BODY> Hello world!</BODY></HTML>";
    ubyte buffer[] = System.Text.Encoding.get_UTF8().GetBytes(responseString);
    // Get a response stream and write the response to it.
    response.set_ContentLength64(buffer.get_Length());
    System.IO.Stream output = response.get_OutputStream();
    output.Write(buffer, 0, buffer.get_Length());
    // You must close the output stream.
    output.Close();
    listener.Stop();
} //SimpleListenerExample

System.Object
  System.Net.HttpListenerResponse

Alle öffentlichen statischen (Shared in Visual Basic) Member dieses Typs sind threadsicher. Bei Instanzmembern ist die Threadsicherheit nicht gewährleistet.

Windows 98, Windows Server 2000 SP4, Windows Millennium Edition, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition

Microsoft .NET Framework 3.0 wird unter Windows Vista, Microsoft Windows XP SP2 und Windows Server 2003 SP1 unterstützt.

.NET Framework

Unterstützt in: 3.0, 2.0
Anzeigen: