HttpListenerRequest.InputStream Свойство
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Возвращает поток, содержащий данные основного текста, отправленные клиентом.
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
Значение свойства
Доступный для чтения объект Stream, который содержит байты, отправленные клиентом в основном тексте запроса. Это свойство возвращает значение Null, если вместе с запросом не было отправлено никаких данных.
Примеры
В следующем примере кода показано использование этого свойства для чтения данных, отправленных с помощью запроса.
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
Комментарии
Если клиент передает данные (например, с помощью метода HTTP POST
), поток, возвращаемый этим методом, содержит эти данные.
Примечание
Закрытие запроса не закрывает поток, возвращаемый этим свойством. Если поток больше не нужен, его следует закрыть, вызвав Close метод .
Примечания для тех, кто вызывает этот метод
Данный член генерирует сведения трассировки, если в приложении включена трассировка сети. Дополнительные сведения см. в статье Трассировка сети в .NET Framework.