Compartir a través de


HttpResponse Clase

Definición

Encapsula la información de la respuesta HTTP de una operación ASP.NET.

public ref class HttpResponse sealed
public sealed class HttpResponse
type HttpResponse = class
Public NotInheritable Class HttpResponse
Herencia
HttpResponse

Ejemplos

En el ejemplo siguiente se dibujan tres rectángulos superpuestos cuando se solicita la página. El código comienza estableciendo la ContentType propiedad en image/jpeg, de modo que toda la página se represente como una imagen JPEG. A continuación, el código llama al Clear método para asegurarse de que no se envía ningún contenido extraño con esta respuesta. A continuación, el código establece la BufferOutput propiedad en true para que la página se procese completamente antes de enviarla al cliente solicitante. A continuación, se crean dos objetos que se usan para dibujar los rectángulos: y Bitmap un Graphics objeto . Las variables creadas en la página se usan como coordenadas para dibujar los rectángulos y una cadena que aparece dentro del rectángulo más grande.

Cuando se dibujan los tres rectángulos y la cadena que aparece dentro de ellos, Bitmap se guarda en el Stream objeto asociado a la OutputStream propiedad y su formato se establece en JPEG. El código llama a los Dispose métodos y Dispose para liberar los recursos utilizados por los dos objetos de dibujo. Por último, el código llama al Flush método para enviar la respuesta almacenada en búfer al cliente solicitante.

Nota

En el código, la HttpResponse palabra clave Responsehace referencia al objeto . Por ejemplo, Response.Clear() hace referencia al HttpResponse.Clear método . La Page clase tiene una propiedad denominada Response que expone la instancia actual de HttpResponse.

<%@ Page Language="C#" %>
<%@ import Namespace="System.Drawing" %>
<%@ import Namespace="System.Drawing.Imaging" %>
<%@ import Namespace="System.Drawing.Drawing2D" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">

    private void Page_Load(object sender, EventArgs e)
    {
// <snippet2>
        // Set the page's content type to JPEG files
        // and clears all content output from the buffer stream.
        Response.ContentType = "image/jpeg";
        Response.Clear();
    
        // Buffer response so that page is sent
        // after processing is complete.
        Response.BufferOutput = true;
// </snippet2>
    
        // Create a font style.
        Font rectangleFont = new Font(
            "Arial", 10, FontStyle.Bold);
    
        // Create integer variables.
        int height = 100;
        int width = 200;
    
        // Create a random number generator and create
        // variable values based on it.
        Random r = new Random();
        int x = r.Next(75);
        int a = r.Next(155);
        int x1 = r.Next(100);
    
        // Create a bitmap and use it to create a
        // Graphics object.
        Bitmap bmp = new Bitmap(
            width, height, PixelFormat.Format24bppRgb);
        Graphics g = Graphics.FromImage(bmp);
    
        g.SmoothingMode = SmoothingMode.AntiAlias;
        g.Clear(Color.LightGray);
    
        // Use the Graphics object to draw three rectangles.
        g.DrawRectangle(Pens.White, 1, 1, width-3, height-3);
        g.DrawRectangle(Pens.Aquamarine, 2, 2, width-3, height-3);
        g.DrawRectangle(Pens.Black, 0, 0, width, height);
    
        // Use the Graphics object to write a string
        // on the rectangles.
        g.DrawString(
            "ASP.NET Samples", rectangleFont,
            SystemBrushes.WindowText, new PointF(10, 40));
    
        // Apply color to two of the rectangles.
        g.FillRectangle(
            new SolidBrush(
                Color.FromArgb(a, 255, 128, 255)),
            x, 20, 100, 50);
    
        g.FillRectangle(
            new LinearGradientBrush(
                new Point(x, 10),
                new Point(x1 + 75, 50 + 30),
                Color.FromArgb(128, 0, 0, 128),
                Color.FromArgb(255, 255, 255, 240)),
            x1, 50, 75, 30);

// <snippet3>    
        // Save the bitmap to the response stream and
        // convert it to JPEG format.
        bmp.Save(Response.OutputStream, ImageFormat.Jpeg);
    
        // Release memory used by the Graphics object
        // and the bitmap.
        g.Dispose();
        bmp.Dispose();
    
        // Send the output to the client.
        Response.Flush();
// </snippet3>
    }

</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
    <title>ASP.NET Example</title>
</head>
<body>
    <form id="form1" runat="server">
    </form>
</body>
</html>
<%@ Page Language="VB" %>
<%@ import Namespace="System.Drawing" %>
<%@ import Namespace="System.Drawing.Imaging" %>
<%@ import Namespace="System.Drawing.Drawing2D" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">

   Private Sub Page_Load(sender As Object, e As EventArgs)
' <snippet2>
      ' Set the page's content type to JPEG files
      ' and clears all content output from the buffer stream.
      Response.ContentType = "image/jpeg"
      Response.Clear()
      
      ' Buffer response so that page is sent
      ' after processing is complete.
      Response.BufferOutput = True
' </snippet2>
      
      ' Create a font style.
      Dim rectangleFont As New Font( _
          "Arial", 10, FontStyle.Bold)
      
      ' Create integer variables.
      Dim height As Integer = 100
      Dim width As Integer = 200
      
      ' Create a random number generator and create
      ' variable values based on it.
      Dim r As New Random()
      Dim x As Integer = r.Next(75)
      Dim a As Integer = r.Next(155)
      Dim x1 As Integer = r.Next(100)
      
      ' Create a bitmap and use it to create a
      ' Graphics object.
      Dim bmp As New Bitmap( _
          width, height, PixelFormat.Format24bppRgb)
      Dim g As Graphics = Graphics.FromImage(bmp)
      
      g.SmoothingMode = SmoothingMode.AntiAlias
      g.Clear(Color.LightGray)
      
      ' Use the Graphics object to draw three rectangles.
      g.DrawRectangle(Pens.White, 1, 1, width - 3, height - 3)
      g.DrawRectangle(Pens.Aquamarine, 2, 2, width - 3, height - 3)
      g.DrawRectangle(Pens.Black, 0, 0, width, height)
      
      ' Use the Graphics object to write a string
      ' on the rectangles.
      g.DrawString("ASP.NET Samples", rectangleFont, SystemBrushes.WindowText, New PointF(10, 40))
      
      ' Apply color to two of the rectangles.
      g.FillRectangle( _
          New SolidBrush( _
              Color.FromArgb(a, 255, 128, 255)), _
          x, 20, 100, 50)
      
      g.FillRectangle( _
          New LinearGradientBrush( _
              New Point(x, 10), _
              New Point(x1 + 75, 50 + 30), _
              Color.FromArgb(128, 0, 0, 128), _
              Color.FromArgb(255, 255, 255, 240)), _
          x1, 50, 75, 30)

' <snippet3>      
      ' Save the bitmap to the response stream and
      ' convert it to JPEG format.
      bmp.Save(Response.OutputStream, ImageFormat.Jpeg)
      
      ' Release memory used by the Graphics object
      ' and the bitmap.
      g.Dispose()
      bmp.Dispose()
      
      ' Send the output to the client.
      Response.Flush()
' </snippet3>
   End Sub 'Page_Load

</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
    <title>ASP.NET Example</title>
</head>
<body>
    <form id="form1" runat="server">
    </form>
</body>
</html>

Comentarios

Los métodos y propiedades de la HttpResponse clase se exponen a través de la Response propiedad de las HttpApplicationclases , HttpContext, Pagey UserControl .

Los métodos siguientes de la HttpResponse clase solo se admiten en escenarios posteriores posteriores y no en escenarios posteriores asincrónicos:

Las actualizaciones parciales de página se habilitan cuando se usan UpdatePanel controles para actualizar las regiones seleccionadas de una página en lugar de actualizar toda la página con una publicación. Para obtener más información, vea UpdatePanel Control Overview y Partial-Page Rendering Overview.

Constructores

HttpResponse(TextWriter)

Inicializa una nueva instancia de la clase HttpResponse.

Propiedades

Buffer

Obtiene o establece un valor que indica si los resultados se van a almacenar en el búfer y se van a enviar después de que se haya terminado de procesar la respuesta completa.

BufferOutput

Obtiene o establece un valor que indica si los resultados se van a almacenar en el búfer y se van a enviar después de que se haya terminado de procesar la página completa.

Cache

Obtiene la directiva de caché (por ejemplo, tiempo de expiración, configuración de privacidad y cláusulas de variación) de una página web.

CacheControl

Obtiene o establece el encabezado HTTP Cache-Control que coincide con uno de los valores de enumeración HttpCacheability.

Charset

Obtiene o establece el juego de caracteres HTTP del flujo de salida.

ClientDisconnectedToken

Obtiene un objeto CancellationToken que se desencadena cuando el cliente se desconecta.

ContentEncoding

Obtiene o establece el juego de caracteres HTTP del flujo de salida.

ContentType

Obtiene o establece el tipo MIME HTTP del flujo de salida.

Cookies

Obtiene la colección de cookies de respuesta.

Expires

Obtiene o establece los minutos que deben transcurrir antes de que expire una página almacenada en la caché de un explorador. Si el usuario vuelve a la misma página antes de que expire, aparece la versión almacenada en caché. Se proporciona Expires para ofrecer compatibilidad con versiones anteriores de ASP.

ExpiresAbsolute

Obtiene o establece el valor absoluto de la fecha y la hora en que se quitará de la memoria caché la información almacenada en ella. Se proporciona ExpiresAbsolute para ofrecer compatibilidad con versiones anteriores de ASP.

Filter

Obtiene o establece un objeto de filtro contenedor que se emplea para modificar el cuerpo de la entidad HTTP antes de la transmisión.

HeaderEncoding

Obtiene o establece un objeto Encoding que representa la codificación del flujo de salida del encabezado actual.

Headers

Obtiene la colección de encabezados de respuesta.

HeadersWritten

Obtiene un valor que indica si se escribieron los encabezados de respuesta.

IsClientConnected

Obtiene un valor que indica si el cliente sigue conectado al servidor.

IsRequestBeingRedirected

Obtiene un valor booleano que indica si el cliente se transfiere a una nueva ubicación.

Output

Habilita la salida de texto al flujo de respuesta HTTP saliente.

OutputStream

Habilita la salida binaria para el cuerpo de contenido HTTP saliente.

RedirectLocation

Obtiene o establece el valor del encabezado HTTP Location.

Status

Establece la línea Status que se devuelve al cliente.

StatusCode

Obtiene o establece el código de estado de HTTP de la salida que se devuelve al cliente.

StatusDescription

Obtiene o establece la cadena de estado de HTTP de la salida que se devuelve al cliente.

SubStatusCode

Obtiene o establece un valor que califica el código de estado de la respuesta.

SupportsAsyncFlush

Obtiene un valor que indica si la conexión admite las operaciones de vaciado asincrónicas.

SuppressContent

Obtiene o establece un valor que indica si se debe enviar el contenido HTTP al cliente.

SuppressDefaultCacheControlHeader

Obtiene o establece un valor que indica si se debe suprimir el encabezado predeterminado Cache Control: private para la respuesta HTTP actual.

SuppressFormsAuthenticationRedirect

Obtiene o establece un valor que especifica si la redirección de autenticación de formularios a la página de inicio de sesión debe suprimirse.

TrySkipIisCustomErrors

Obtiene o establece un valor que especifica si se deshabilitan los errores personalizados de IIS 7.0.

Métodos

AddCacheDependency(CacheDependency[])

Asocia un conjunto de dependencias de caché a la respuesta para facilitar la invalidación de la respuesta si se almacena en la caché de resultados y las dependencias especificadas cambian.

AddCacheItemDependencies(ArrayList)

Hace que la validez de una respuesta almacenada en caché dependa de otros elementos de la caché.

AddCacheItemDependencies(String[])

Hace que la validez de un elemento almacenado en caché dependa de otro elemento de la caché.

AddCacheItemDependency(String)

Hace que la validez de una respuesta almacenada en caché dependa de otro elemento de la caché.

AddFileDependencies(ArrayList)

Agrega un grupo de nombres de archivo a la colección de nombres de archivo de la que depende la respuesta actual.

AddFileDependencies(String[])

Agrega una matriz de nombres de archivo a la colección de nombres de archivo de la que depende la respuesta actual.

AddFileDependency(String)

Agrega un solo nombre de archivo a la colección de nombres de archivo de la que depende la respuesta actual.

AddHeader(String, String)

Agrega un encabezado HTTP al flujo de salida. Se proporciona AddHeader(String, String) para ofrecer compatibilidad con versiones anteriores de ASP.

AddOnSendingHeaders(Action<HttpContext>)

Registra una devolución de llamada que el runtime de ASP.NET invocará inmediatamente antes de enviar los encabezados de respuesta para esta solicitud.

AppendCookie(HttpCookie)

Agrega una cookie HTTP a la colección de cookies intrínseca.

AppendHeader(String, String)

Agrega un encabezado HTTP al flujo de salida.

AppendToLog(String)

Agrega información de registro personalizada al archivo del registro de Internet Information Services (IIS).

ApplyAppPathModifier(String)

Agrega un identificador de sesión a la ruta de acceso virtual si la sesión usa un estado de sesión Cookieless y devuelve la ruta combinada. Si no se usa el estado de sesión Cookieless, ApplyAppPathModifier(String) devuelve la ruta de acceso virtual original.

BeginFlush(AsyncCallback, Object)

Envía al cliente la respuesta almacenada actualmente en el búfer.

BinaryWrite(Byte[])

Escribe una cadena de caracteres binarios en el flujo de salida HTTP.

Clear()

Borra toda la salida de contenido del flujo del búfer.

ClearContent()

Borra toda la salida de contenido del flujo del búfer.

ClearHeaders()

Borra todos los encabezados del flujo del búfer.

Close()

Cierra la conexión del socket con un cliente.

DisableKernelCache()

Deshabilita el almacenamiento en caché en el kernel para la respuesta actual.

DisableUserCache()

Deshabilita el almacenamiento en caché del modo de usuario de IIS para esta respuesta.

End()

Envía al cliente toda la salida del búfer actual, detiene la ejecución de la página y genera el evento EndRequest.

EndFlush(IAsyncResult)

Completa una operación de vaciado asincrónico.

Equals(Object)

Determina si el objeto especificado es igual que el objeto actual.

(Heredado de Object)
Flush()

Envía al cliente toda la salida almacenada en el búfer.

FlushAsync()

Envía de manera asincrónica al cliente todos los resultados almacenados actualmente en el búfer.

GetHashCode()

Sirve como la función hash predeterminada.

(Heredado de Object)
GetType()

Obtiene el Type de la instancia actual.

(Heredado de Object)
MemberwiseClone()

Crea una copia superficial del Object actual.

(Heredado de Object)
Pics(String)

Anexa un encabezado HTTP PICS-Label al flujo de salida.

PushPromise(String)

Ofrece compatibilidad con aplicaciones que envían compromisos de inserción a los clientes HTTP 2.0. Para obtener más información, consulte la sección 8.2 del documento HTTP/2 Specification: Server Push.

PushPromise(String, String, NameValueCollection)

Ofrece compatibilidad con aplicaciones que envían compromisos de inserción a los clientes HTTP 2.0. Para obtener más información, consulte la sección 8.2 del documento HTTP/2 Specification: Server Push.

Redirect(String)

Redirecciona una solicitud a una nueva dirección URL y especifica la nueva URL.

Redirect(String, Boolean)

Redirecciona un cliente a una nueva dirección URL. Especifica la nueva URL y si la ejecución de la página actual debe finalizar.

RedirectPermanent(String)

Realiza un redireccionamiento permanente de la dirección URL solicitada a la dirección URL especificada.

RedirectPermanent(String, Boolean)

Realiza un redireccionamiento permanente de la dirección URL solicitada a la dirección URL especificada y proporciona la opción para completar la respuesta.

RedirectToRoute(Object)

Redirige una solicitud a una nueva dirección URL mediante los valores de parámetro de la ruta.

RedirectToRoute(RouteValueDictionary)

Redirige una solicitud a una nueva dirección URL mediante los valores de parámetro de la ruta.

RedirectToRoute(String)

Redirige una solicitud a una nueva dirección URL mediante un nombre de ruta.

RedirectToRoute(String, Object)

Redirige una solicitud a una nueva dirección URL mediante los valores de parámetro de la ruta y un nombre de ruta.

RedirectToRoute(String, RouteValueDictionary)

Redirige una solicitud a una nueva dirección URL mediante los valores de parámetro de la ruta y un nombre de ruta.

RedirectToRoutePermanent(Object)

Realiza un redireccionamiento permanente de una dirección URL solicitada a una nueva dirección URL mediante los valores de parámetro de la ruta.

RedirectToRoutePermanent(RouteValueDictionary)

Realiza un redireccionamiento permanente de una dirección URL solicitada a una nueva dirección URL mediante los valores de parámetro de la ruta.

RedirectToRoutePermanent(String)

Realiza una redirección permanente de una dirección URL solicitada a una nueva dirección URL mediante un nombre de ruta.

RedirectToRoutePermanent(String, Object)

Realiza un redireccionamiento permanente de la dirección URL solicitada a una nueva dirección URL mediante los valores de parámetro y el nombre de la ruta que corresponden a la nueva dirección URL.

RedirectToRoutePermanent(String, RouteValueDictionary)

Realiza un redireccionamiento permanente de una dirección URL solicitada a una nueva dirección URL mediante los valores de parámetro de la ruta y un nombre de ruta.

RemoveOutputCacheItem(String)

Quita de la memoria caché todos los elementos almacenados en caché que estén asociados al proveedor de caché de resultados predeterminado. Este método es estático.

RemoveOutputCacheItem(String, String)

Usa el proveedor de caché de resultados especificado para quitar todos los elementos de caché de resultados que están asociados a la ruta de acceso indicada.

SetCookie(HttpCookie)

Dado que el método HttpResponse.SetCookie está pensado solo para uso interno, no lo debe llamar en el código. En su lugar, puede llamar al método HttpResponse.Cookies.Set, tal como se muestra en el ejemplo siguiente.
Actualiza una cookie existente en la colección de cookies.

ToString()

Devuelve una cadena que representa el objeto actual.

(Heredado de Object)
TransmitFile(String)

Escribe el archivo especificado directamente en un flujo de salida de respuesta HTTP, sin almacenarlo en búfer en memoria.

TransmitFile(String, Int64, Int64)

Escribe la parte especificada de un archivo directamente en un flujo de salida de respuesta HTTP, sin almacenarlo en búfer en memoria.

Write(Char)

Escribe un carácter en un flujo de salida de respuesta HTTP.

Write(Char[], Int32, Int32)

Escribe una matriz de caracteres en un flujo de salida de respuesta HTTP.

Write(Object)

Escribe un Object en un flujo de respuesta HTTP.

Write(String)

Escribe una cadena en un flujo de salida de respuesta HTTP.

WriteFile(IntPtr, Int64, Int64)

Escribe el archivo especificado directamente en un flujo de salida de respuesta HTTP.

WriteFile(String)

Escribe el contenido del archivo especificado directamente en un flujo de salida de respuesta HTTP como un bloque de archivos.

WriteFile(String, Boolean)

Escribe el contenido del archivo especificado directamente en un flujo de salida de respuesta HTTP como un bloque de memoria.

WriteFile(String, Int64, Int64)

Escribe el archivo especificado directamente en un flujo de salida de respuesta HTTP.

WriteSubstitution(HttpResponseSubstitutionCallback)

Permite la inserción de bloques de substitución de respuesta en la respuesta, lo que permite la generación dinámica de regiones de respuesta especificadas para las respuestas almacenadas en la caché de resultados.

Se aplica a