Compartilhar via


HttpListenerRequest.InputStream Propriedade

Definição

Obtém um fluxo que contém os dados do corpo enviados pelo cliente.

public:
 property System::IO::Stream ^ InputStream { System::IO::Stream ^ get(); };
public System.IO.Stream InputStream { get; }
member this.InputStream : System.IO.Stream
Public ReadOnly Property InputStream As Stream

Valor da propriedade

Um objeto Stream legível que contém os bytes enviados pelo cliente no corpo da solicitação. Essa propriedade retornará Null se nenhum dado for enviado com a solicitação.

Exemplos

O exemplo de código a seguir demonstra o uso dessa propriedade para ler os dados enviados com uma solicitação.

public static void ShowRequestData (HttpListenerRequest request)
{
    if (!request.HasEntityBody)
    {
        Console.WriteLine("No client data was sent with the request.");
        return;
    }
    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(s);
    Console.WriteLine("End of client data:");
    body.Close();
    reader.Close();
    // If you are finished with the request, it should be closed also.
}
Public Shared Sub ShowRequestData(ByVal request As HttpListenerRequest)
    If Not request.HasEntityBody Then
        Console.WriteLine("No client data was sent with the request.")
        Return
    End If

    Dim body As System.IO.Stream = request.InputStream
    Dim encoding As System.Text.Encoding = request.ContentEncoding
    Dim reader As System.IO.StreamReader = New System.IO.StreamReader(body, encoding)

    If request.ContentType IsNot Nothing Then
        Console.WriteLine("Client data content type {0}", request.ContentType)
    End If

    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.
    Dim s As String = reader.ReadToEnd()
    Console.WriteLine(s)
    Console.WriteLine("End of client data:")
    body.Close()
    reader.Close()
    ' If you are finished with the request, it should be closed also.
End Sub

Comentários

Se o cliente transmitir dados (por exemplo, usando o método HTTP POST ), o fluxo retornado por esse método conterá esses dados.

Observação

Fechar a solicitação não fecha o fluxo retornado por essa propriedade. Quando você não precisar mais do fluxo, deverá fechá-lo chamando o Close método .

Notas aos Chamadores

Esse membro emite o rastreamento de informações quando você ativa o rastreamento de rede em seu aplicativo. Para obter mais informações, consulte Rastreamento de rede no .NET Framework.

Aplica-se a

Confira também