HttpResponse Classe
Definição
Importante
Algumas informações dizem respeito a um produto pré-lançado que pode ser substancialmente modificado antes de ser lançado. A Microsoft não faz garantias, de forma expressa ou implícita, em relação à informação aqui apresentada.
Encapsula informação de resposta HTTP de uma operação ASP.NET.
public ref class HttpResponse sealed
public sealed class HttpResponse
type HttpResponse = class
Public NotInheritable Class HttpResponse
- Herança
-
HttpResponse
Exemplos
O exemplo seguinte desenha três retângulos sobrepostos quando a página é solicitada. O código começa por definir a ContentType propriedade para image/jpeg, de modo que toda a página seja renderizada como uma imagem JPEG. O código chama então o Clear método para garantir que nenhum conteúdo supérfluo é enviado com esta resposta. De seguida, o código define a BufferOutput propriedade como true para que a página seja completamente processada antes de ser enviada ao cliente solicitante. São então criados dois objetos usados para desenhar os retângulos: a Bitmap e um objeto Graphics . As variáveis criadas na página são usadas como coordenadas para desenhar os retângulos e uma cadeia que aparece dentro do maior retângulo.
Quando os três retângulos e a cadeia que aparece dentro deles são desenhados, o Bitmap é guardado no Stream objeto associado à OutputStream propriedade e o seu formato é definido para JPEG. O código chama os Dispose métodos e Dispose para libertar os recursos usados pelos dois objetos de desenho. Por fim, o código chama o Flush método para enviar a resposta em buffer ao cliente solicitante.
Note
No código, o HttpResponse objeto é referido pela palavra-chave Response. Por exemplo, Response.Clear() refere-se ao HttpResponse.Clear método. A Page classe tem uma propriedade chamada Response que expõe a instância atual 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>
Observações
Os métodos e propriedades da HttpResponse classe são expostos através da Response propriedade das HttpApplicationclasses, HttpContext, Page, e UserControl .
Os seguintes métodos da HttpResponse classe são suportados apenas em cenários pós-retrocesso e não em cenários assíncronos de pós-retorno:
- BinaryWrite
- Clear
- ClearContent
- ClearHeaders
- Close
- End
- Flush
- TransmitFile
- Write
- WriteFile
- WriteSubstitution
As atualizações parciais da página são ativadas quando usas UpdatePanel controlos para atualizar regiões selecionadas de uma página em vez de atualizar toda a página com um post de volta. Para mais informações, consulte Visão Geral de Controlo do Painel de Atualização e Partial-Page Visão Geral de Renderização.
Construtores
| Name | Description |
|---|---|
| HttpResponse(TextWriter) |
Inicializa uma nova instância da HttpResponse classe. |
Propriedades
| Name | Description |
|---|---|
| Buffer |
Recebe ou define um valor que indica se deve armazenar a saída em buffer e enviá-la após o processamento completo da resposta. |
| BufferOutput |
Recebe ou define um valor que indica se deve armazenar a saída em buffer e enviá-la depois de terminar o processamento da página completa. |
| Cache |
Recebe a política de cache (como tempo de expiração, definições de privacidade e cláusulas de variação) de uma página Web. |
| CacheControl |
Recebe ou define o |
| Charset |
Obtém ou define o conjunto de caracteres HTTP do fluxo de saída. |
| ClientDisconnectedToken |
Obtém um CancellationToken objeto que desarma quando o cliente se desliga. |
| ContentEncoding |
Obtém ou define o conjunto de caracteres HTTP do fluxo de saída. |
| ContentType |
Obtém ou define o tipo HTTP MIME do fluxo de saída. |
| Cookies |
Recebe a recolha de cookies de resposta. |
| Expires |
Obtém ou define o número de minutos antes de uma página armazenada em cache num navegador expirar. Se o utilizador regressar à mesma página antes de expirar, a versão em cache é apresentada. Expires é fornecido para compatibilidade com versões anteriores do ASP. |
| ExpiresAbsolute |
Obtém ou define a data e hora absolutas para remover a informação em cache da cache. ExpiresAbsolute é fornecido para compatibilidade com versões anteriores do ASP. |
| Filter |
Obtém ou define um objeto filtro de encapsulamento que é usado para modificar o corpo da entidade HTTP antes da transmissão. |
| HeaderEncoding |
Obtém ou define um Encoding objeto que representa a codificação do fluxo de saída do cabeçalho atual. |
| Headers |
Recebe a coleção de cabeçalhos de resposta. |
| HeadersWritten |
Recebe um valor que indica se os cabeçalhos de resposta foram escritos. |
| IsClientConnected |
Recebe um valor que indica se o cliente ainda está ligado ao servidor. |
| IsRequestBeingRedirected |
Recebe um valor booleano que indica se o cliente está a ser transferido para uma nova localização. |
| Output |
Permite a saída de texto para o fluxo de resposta HTTP de saída. |
| OutputStream |
Permite a saída binária para o corpo de conteúdo HTTP de saída. |
| RedirectLocation |
Obtém ou define o valor do cabeçalho HTTP |
| Status |
Define a |
| StatusCode |
Recebe ou define o código de estado HTTP da saída devolvida ao cliente. |
| StatusDescription |
Recebe ou define a cadeia de estado HTTP da saída devolvida ao cliente. |
| SubStatusCode |
Recebe ou define um valor que qualifica o código de estado da resposta. |
| SupportsAsyncFlush |
Recebe um valor que indica se a ligação suporta operações de limpeza assíncronas. |
| SuppressContent |
Recebe ou define um valor que indica se deve enviar conteúdo HTTP ao cliente. |
| SuppressDefaultCacheControlHeader |
Recebe ou define um valor que indica se deve suprimir o cabeçalho padrão |
| SuppressFormsAuthenticationRedirect |
Recebe ou define um valor que especifica se o redirecionamento de autenticação dos formulários para a página de login deve ser suprimido. |
| TrySkipIisCustomErrors |
Recebe ou define um valor que especifica se os erros personalizados do IIS 7.0 estão desativados. |
Métodos
| Name | Description |
|---|---|
| AddCacheDependency(CacheDependency[]) |
Associa um conjunto de dependências de cache à resposta para facilitar a invalidação da resposta se esta estiver armazenada na cache de saída e as dependências especificadas mudarem. |
| AddCacheItemDependencies(ArrayList) |
Torna a validade de uma resposta em cache dependente de outros itens na cache. |
| AddCacheItemDependencies(String[]) |
Torna a validade de um item em cache dependente de outro item na cache. |
| AddCacheItemDependency(String) |
Torna a validade de uma resposta em cache dependente de outro item na cache. |
| AddFileDependencies(ArrayList) |
Adiciona um grupo de nomes de ficheiros à coleção de nomes de ficheiros da qual a resposta atual depende. |
| AddFileDependencies(String[]) |
Adiciona um array de nomes de ficheiros à coleção de nomes de ficheiros da qual a resposta atual depende. |
| AddFileDependency(String) |
Adiciona um único nome de ficheiro à coleção de nomes de ficheiros da qual a resposta atual depende. |
| AddHeader(String, String) |
Adiciona um cabeçalho HTTP ao fluxo de saída. AddHeader(String, String) é fornecido para compatibilidade com versões anteriores do ASP. |
| AddOnSendingHeaders(Action<HttpContext>) |
Regista um callback que o runtime ASP.NET invocará imediatamente antes de serem enviados cabeçalhos de resposta para este pedido. |
| AppendCookie(HttpCookie) |
Adiciona um cookie HTTP à coleção intrínseca de cookies. |
| AppendHeader(String, String) |
Adiciona um cabeçalho HTTP ao fluxo de saída. |
| AppendToLog(String) |
Adiciona informação de registo personalizada ao ficheiro de registo do Serviços de Informação Internet (IIS). |
| ApplyAppPathModifier(String) |
Adiciona um ID de sessão ao caminho virtual se a sessão estiver a usar Cookieless o estado da sessão e devolve o caminho combinado. Se Cookieless o estado da sessão não for utilizado, devolve ApplyAppPathModifier(String) o caminho virtual original. |
| BeginFlush(AsyncCallback, Object) |
Envia a resposta atualmente em buffer para o cliente. |
| BinaryWrite(Byte[]) |
Escreve uma cadeia de caracteres binários no fluxo de saída HTTP. |
| Clear() |
Apaga todo o conteúdo que sai do fluxo de buffer. |
| ClearContent() |
Apaga todo o conteúdo que sai do fluxo de buffer. |
| ClearHeaders() |
Limpa todos os cabeçalhos do fluxo de buffer. |
| Close() |
Fecha a ligação da tomada a um cliente. |
| DisableKernelCache() |
Desativa a cache do kernel para a resposta atual. |
| DisableUserCache() |
Desativa a cache do modo utilizador IIS para esta resposta. |
| End() |
Envia toda a saída atualmente em buffer para o cliente, interrompe a execução da página e gera o EndRequest evento. |
| EndFlush(IAsyncResult) |
Completa uma operação de limpeza assíncrona. |
| Equals(Object) |
Determina se o objeto especificado é igual ao objeto atual. (Herdado de Object) |
| Flush() |
Envia toda a saída atualmente em buffer para o cliente. |
| FlushAsync() |
De forma assíncrona, envia toda a saída atualmente em buffer para o cliente. |
| GetHashCode() |
Serve como função de hash predefinida. (Herdado de Object) |
| GetType() |
Obtém o Type da instância atual. (Herdado de Object) |
| MemberwiseClone() |
Cria uma cópia superficial do atual Object. (Herdado de Object) |
| Pics(String) |
Adiciona um cabeçalho HTTP |
| PushPromise(String, String, NameValueCollection) |
Suporta aplicações que enviam promessas push para clientes HTTP 2.0. Para mais informações, consulte a Secção 8.2 da Especificação HTTP/2: Server Push. |
| PushPromise(String) |
Suporta aplicações que enviam promessas push para clientes HTTP 2.0. Para mais informações, consulte a Secção 8.2 da Especificação HTTP/2: Server Push. |
| Redirect(String, Boolean) |
Redireciona um cliente para uma nova URL. Especifica o novo URL e se a execução da página atual deve terminar. |
| Redirect(String) |
Redireciona um pedido para uma nova URL e especifica a nova URL. |
| RedirectPermanent(String, Boolean) |
Realiza um redirecionamento permanente da URL solicitada para a URL especificada e fornece a opção de completar a resposta. |
| RedirectPermanent(String) |
Realiza um redirecionamento permanente da URL solicitada para a URL especificada. |
| RedirectToRoute(Object) |
Redireciona um pedido para uma nova URL usando valores de parâmetros de rota. |
| RedirectToRoute(RouteValueDictionary) |
Redireciona um pedido para uma nova URL usando valores de parâmetros de rota. |
| RedirectToRoute(String, Object) |
Redireciona um pedido para uma nova URL usando valores de parâmetros de rota e um nome de rota. |
| RedirectToRoute(String, RouteValueDictionary) |
Redireciona um pedido para uma nova URL usando valores de parâmetros de rota e um nome de rota. |
| RedirectToRoute(String) |
Redireciona um pedido para uma nova URL usando um nome de rota. |
| RedirectToRoutePermanent(Object) |
Realiza um redirecionamento permanente de uma URL solicitada para uma nova URL usando valores de parâmetros de rota. |
| RedirectToRoutePermanent(RouteValueDictionary) |
Realiza um redirecionamento permanente de uma URL solicitada para uma nova URL usando valores de parâmetros de rota. |
| RedirectToRoutePermanent(String, Object) |
Realiza um redirecionamento permanente de uma URL solicitada para uma nova URL, utilizando os valores dos parâmetros de rota e o nome da rota que corresponde à nova URL. |
| RedirectToRoutePermanent(String, RouteValueDictionary) |
Realiza um redirecionamento permanente de uma URL solicitada para uma nova URL, utilizando valores de parâmetros de rota e um nome de rota. |
| RedirectToRoutePermanent(String) |
Realiza um redirecionamento permanente de uma URL solicitada para uma nova URL usando um nome de rota. |
| RemoveOutputCacheItem(String, String) |
Utiliza o fornecedor de cache de saída especificado para remover todos os itens de cache de saída associados ao caminho especificado. |
| RemoveOutputCacheItem(String) |
Remove da cache todos os itens em cache associados ao fornecedor de cache de saída por defeito. Este método é estático. |
| SetCookie(HttpCookie) |
Como o método HttpResponse.SetCookie é destinado apenas a uso interno, não deve chamá-lo no seu código. Em vez disso, pode chamar o método HttpResponse.Cookies.Set , como mostra o exemplo seguinte. |
| ToString() |
Devolve uma cadeia que representa o objeto atual. (Herdado de Object) |
| TransmitFile(String, Int64, Int64) |
Escreve a parte especificada de um ficheiro diretamente num fluxo de resposta HTTP sem o armazenar em memória. |
| TransmitFile(String) |
Escreve o ficheiro especificado diretamente num fluxo de resposta HTTP de saída, sem o armazenar em memória. |
| Write(Char) |
Escreve um carácter num fluxo de saída de resposta HTTP. |
| Write(Char[], Int32, Int32) |
Escreve um array de caracteres num fluxo de resposta HTTP de saída. |
| Write(Object) |
Escreve num Object fluxo de resposta HTTP. |
| Write(String) |
Escreve uma string num fluxo de resposta HTTP de saída. |
| WriteFile(IntPtr, Int64, Int64) |
Escreve o ficheiro especificado diretamente num fluxo de resposta HTTP de saída. |
| WriteFile(String, Boolean) |
Escreve o conteúdo do ficheiro especificado diretamente num fluxo de resposta HTTP como bloco de memória. |
| WriteFile(String, Int64, Int64) |
Escreve o ficheiro especificado diretamente num fluxo de resposta HTTP de saída. |
| WriteFile(String) |
Escreve o conteúdo do ficheiro especificado diretamente num fluxo de resposta HTTP como bloco de ficheiro. |
| WriteSubstitution(HttpResponseSubstitutionCallback) |
Permite a inserção de blocos de substituição de resposta na resposta, o que permite a geração dinâmica de regiões de resposta especificadas para respostas em cache de saída. |