HttpWebResponse.GetResponseStream Método
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Obtiene la secuencia usada para leer el cuerpo de la respuesta del servidor.
public:
override System::IO::Stream ^ GetResponseStream();
public override System.IO.Stream GetResponseStream ();
override this.GetResponseStream : unit -> System.IO.Stream
Public Overrides Function GetResponseStream () As Stream
Devoluciones
Stream que contiene el cuerpo de la respuesta.
Excepciones
No hay secuencia de respuesta.
Se ha eliminado la instancia actual.
Ejemplos
En el ejemplo siguiente se muestra cómo usar GetResponseStream para devolver la Stream instancia usada para leer la respuesta del servidor.
// Creates an HttpWebRequest with the specified URL.
HttpWebRequest^ myHttpWebRequest = (HttpWebRequest^)( WebRequest::Create( url ) );
// Sends the HttpWebRequest and waits for the response.
HttpWebResponse^ myHttpWebResponse = (HttpWebResponse^)( myHttpWebRequest->GetResponse() );
// Gets the stream associated with the response.
Stream^ receiveStream = myHttpWebResponse->GetResponseStream();
Encoding^ encode = System::Text::Encoding::GetEncoding( "utf-8" );
// Pipes the stream to a higher level stream reader with the required encoding format.
StreamReader^ readStream = gcnew StreamReader( receiveStream,encode );
Console::WriteLine( "\r\nResponse stream received." );
array<Char>^ read = gcnew array<Char>(256);
// Reads 256 characters at a time.
int count = readStream->Read( read, 0, 256 );
Console::WriteLine( "HTML...\r\n" );
while ( count > 0 )
{
// Dumps the 256 characters on a String* and displays the String* to the console.
String^ str = gcnew String( read,0,count );
Console::Write( str );
count = readStream->Read( read, 0, 256 );
}
Console::WriteLine( "" );
// Releases the resources of the response.
myHttpWebResponse->Close();
// Releases the resources of the Stream.
readStream->Close();
// Creates an HttpWebRequest with the specified URL.
HttpWebRequest myHttpWebRequest = (HttpWebRequest)WebRequest.Create(url);
// Sends the HttpWebRequest and waits for the response.
HttpWebResponse myHttpWebResponse = (HttpWebResponse)myHttpWebRequest.GetResponse();
// Gets the stream associated with the response.
Stream receiveStream = myHttpWebResponse.GetResponseStream();
Encoding encode = System.Text.Encoding.GetEncoding("utf-8");
// Pipes the stream to a higher level stream reader with the required encoding format.
StreamReader readStream = new StreamReader( receiveStream, encode );
Console.WriteLine("\r\nResponse stream received.");
Char[] read = new Char[256];
// Reads 256 characters at a time.
int count = readStream.Read( read, 0, 256 );
Console.WriteLine("HTML...\r\n");
while (count > 0)
{
// Dumps the 256 characters on a string and displays the string to the console.
String str = new String(read, 0, count);
Console.Write(str);
count = readStream.Read(read, 0, 256);
}
Console.WriteLine("");
// Releases the resources of the response.
myHttpWebResponse.Close();
// Releases the resources of the Stream.
readStream.Close();
' Creates an HttpWebRequest for the specified URL.
Dim myHttpWebRequest As HttpWebRequest = CType(WebRequest.Create(url), HttpWebRequest)
' Sends the request and waits for a response.
Dim myHttpWebResponse As HttpWebResponse = CType(myHttpWebRequest.GetResponse(), HttpWebResponse)
' Calls the method GetResponseStream to return the stream associated with the response.
Dim receiveStream As Stream = myHttpWebResponse.GetResponseStream()
Dim encode As Encoding = System.Text.Encoding.GetEncoding("utf-8")
' Pipes the response stream to a higher level stream reader with the required encoding format.
Dim readStream As New StreamReader(receiveStream, encode)
Console.WriteLine(ControlChars.Lf + ControlChars.Cr + "Response stream received")
Dim read(256) As [Char]
' Reads 256 characters at a time.
Dim count As Integer = readStream.Read(read, 0, 256)
Console.WriteLine("HTML..." + ControlChars.Lf + ControlChars.Cr)
While count > 0
' Dumps the 256 characters to a string and displays the string to the console.
Dim str As New [String](read, 0, count)
Console.Write(str)
count = readStream.Read(read, 0, 256)
End While
Console.WriteLine("")
' Releases the resources of the Stream.
readStream.Close()
' Releases the resources of the response.
myHttpWebResponse.Close()
Comentarios
El GetResponseStream método devuelve el flujo de datos del recurso de Internet solicitado.
Nota
Debe llamar a uno de los Stream.Closemétodos , Stream.Dispose, HttpWebResponse.Closeo HttpWebResponse.Dispose para cerrar la secuencia y liberar la conexión para su reutilización. No es necesario cerrar ni eliminar ambas Stream instancias y HttpWebResponse , si lo hace, no se produce un error. Si no se cierra o elimina la secuencia, la aplicación se quedará sin conexiones.
Nota
Este miembro genera información de seguimiento cuando se habilita el seguimiento de red en la aplicación. Para obtener más información, vea Seguimiento de red en .NET Framework.