InputStream Property

HttpListenerRequest.InputStream Property


Gets a stream that contains the body data sent by the client.

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

Public ReadOnly Property InputStream As Stream

Property Value

Type: System.IO.Stream

A readable Stream object that contains the bytes sent by the client in the body of the request. This property returns Null if no data is sent with the request.

If the client transmits data (for example, using the HTTP POST method), the stream returned by this method contains that data.


Closing the request does not close the stream returned by this property. When you no longer need the stream, you should close it by calling the Close method.

Notes to Callers:

This member outputs trace information when you enable network tracing in your application. For more information, see Network Tracing in the .NET Framework.

The following code example demonstrates using this property to read the data sent with a request.

public static void ShowRequestData (HttpListenerRequest request)
    if (!request.HasEntityBody)
        Console.WriteLine("No client data was sent with the request.");
    System.IO.Stream body = request.InputStream;
    System.Text.Encoding encoding = request.ContentEncoding;
    System.IO.StreamReader reader = new System.IO.StreamReader(body, encoding);
    if (request.ContentType != null)
        Console.WriteLine("Client data content type {0}", request.ContentType);
    Console.WriteLine("Client data content length {0}", request.ContentLength64);

    Console.WriteLine("Start of client data:");
    // Convert the data to a string and display it on the console.
    string s = reader.ReadToEnd();
    Console.WriteLine("End of client data:");
    // If you are finished with the request, it should be closed also.

.NET Framework
Available since 2.0
Return to top
© 2015 Microsoft