HttpResponse Třída
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Zapouzdří informace o odpovědi HTTP z operace ASP.NET.
public ref class HttpResponse sealed
public sealed class HttpResponse
type HttpResponse = class
Public NotInheritable Class HttpResponse
- Dědičnost
-
HttpResponse
Příklady
Následující příklad nakreslí tři překrývající se obdélníky, když je stránka požadována. Kód začíná nastavením ContentType vlastnosti image/jpeg tak, aby se celá stránka vykreslovala jako obrázek JPEG. Kód pak zavolá metodu Clear , aby se zajistilo, že s touto odpovědí nebude odeslán žádný nadbytečný obsah. Dále kód nastaví BufferOutput vlastnost na true, aby se stránka před odesláním do žádajícího klienta zcela zpracovala. Potom se vytvoří dva objekty, které se použijí k vykreslení obdélníků: Bitmap a Graphics objekt. Proměnné vytvořené na stránce se používají jako souřadnice k nakreslení obdélníků a řetězce, který se zobrazí uvnitř největšího obdélníku.
Když jsou nakresleny tři obdélníky a řetězec, který se v nich zobrazí, Bitmap uloží se do objektu Stream , který je přidružen k OutputStream vlastnosti, a jeho formát je nastaven na JPEG. Kód volá Dispose metody a Dispose k uvolnění prostředků používaných dvěma nakreslených objektů. Nakonec kód volá metodu Flush pro odeslání odpovědi ve vyrovnávací paměti žádajícímu klientovi.
Poznámka
V kódu se na HttpResponse objekt odkazuje klíčovým slovem Response
. Například Response.Clear()
odkazuje na metodu HttpResponse.Clear . Třída Page má vlastnost s názvem Response , která zveřejňuje aktuální instanci objektu 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>
Poznámky
Metody a vlastnosti HttpResponse třídy jsou vystaveny prostřednictvím Response vlastnosti HttpApplicationtřídy , HttpContext, Pagea UserControl .
Následující metody HttpResponse třídy jsou podporovány pouze ve scénářích post back, nikoli v asynchronních scénářích post back:
- BinaryWrite
- Clear
- ClearContent
- ClearHeaders
- Close
- End
- Flush
- TransmitFile
- Write
- WriteFile
- WriteSubstitution
Částečné aktualizace stránky se povolí, když použijete UpdatePanel ovládací prvky k aktualizaci vybraných oblastí stránky místo aktualizace celé stránky pomocí zpětného příspěvku. Další informace najdete v tématu Přehled ovládacího prvku UpdatePanel a Přehled vykreslování částečné stránky.
Konstruktory
HttpResponse(TextWriter) |
Inicializuje novou instanci HttpResponse třídy . |
Vlastnosti
Buffer |
Získá nebo nastaví hodnotu označující, zda chcete ukládat výstup do vyrovnávací paměti a odeslat jej po dokončení zpracování kompletní odpovědi. |
BufferOutput |
Získá nebo nastaví hodnotu označující, zda chcete ukládat výstup do vyrovnávací paměti a odeslat jej po dokončení zpracování celé stránky. |
Cache |
Získá zásady ukládání do mezipaměti (například čas vypršení platnosti, nastavení ochrany osobních údajů a klauzule Vary) webové stránky. |
CacheControl |
Získá nebo nastaví hlavičku |
Charset |
Získá nebo nastaví znakové sady HTTP výstupního datového proudu. |
ClientDisconnectedToken |
CancellationToken Získá objekt, který je vykopaný při odpojení klienta. |
ContentEncoding |
Získá nebo nastaví znakové sady HTTP výstupního datového proudu. |
ContentType |
Získá nebo nastaví typ HTTP MIME výstupního datového proudu. |
Cookies |
Získá kolekci souborů cookie odpovědi. |
Expires |
Získá nebo nastaví počet minut před vypršením platnosti stránky uložené v mezipaměti v prohlížeči. Pokud se uživatel vrátí na stejnou stránku před vypršením její platnosti, zobrazí se verze uložená v mezipaměti. Expires z důvodu zajištění kompatibility s dřívějšími verzemi asp. |
ExpiresAbsolute |
Získá nebo nastaví absolutní datum a čas, ke kterému chcete odebrat informace z mezipaměti. ExpiresAbsolute z důvodu zajištění kompatibility s dřívějšími verzemi asp. |
Filter |
Získá nebo nastaví objekt obtékání filtru, který se používá k úpravě těla entity HTTP před přenosem. |
HeaderEncoding |
Získá nebo nastaví Encoding objekt, který představuje kódování pro aktuální hlavičku výstupní datový proud. |
Headers |
Získá kolekci hlaviček odpovědi. |
HeadersWritten |
Získá hodnotu označující, zda hlavičky odpovědi byly zapsány. |
IsClientConnected |
Získá hodnotu označující, zda je klient stále připojen k serveru. |
IsRequestBeingRedirected |
Získá logickou hodnotu označující, zda je klient přenesen do nového umístění. |
Output |
Umožňuje výstup textu do odchozího streamu odpovědi HTTP. |
OutputStream |
Povolí binární výstup do těla odchozího obsahu HTTP. |
RedirectLocation |
Získá nebo nastaví hodnotu hlavičky HTTP |
Status |
|
StatusCode |
Získá nebo nastaví stavový kód HTTP výstupu vráceného klientovi. |
StatusDescription |
Získá nebo nastaví stavový řetězec HTTP výstupu vráceného klientovi. |
SubStatusCode |
Získá nebo nastaví hodnotu kvalifikující stavový kód odpovědi. |
SupportsAsyncFlush |
Získá hodnotu, která označuje, zda připojení podporuje asynchronní operace vyprázdnění. |
SuppressContent |
Získá nebo nastaví hodnotu označující, zda se má odeslat obsah HTTP klientovi. |
SuppressDefaultCacheControlHeader |
Získá nebo nastaví hodnotu označující, zda se má potlačit výchozí |
SuppressFormsAuthenticationRedirect |
Získá nebo nastaví hodnotu, která určuje, zda má být potlačení přesměrování ověřování formulářů na přihlašovací stránku. |
TrySkipIisCustomErrors |
Získá nebo nastaví hodnotu, která určuje, zda jsou zakázány vlastní chyby služby IIS 7.0. |
Metody
AddCacheDependency(CacheDependency[]) |
Přidruží k odpovědi sadu závislostí mezipaměti, aby se usnadnilo zneplatnění odpovědi, pokud je uložena ve výstupní mezipaměti a zadané závislosti se změní. |
AddCacheItemDependencies(ArrayList) |
Umožňuje, aby platnost odpovědi uložené v mezipaměti závisela na dalších položkách v mezipaměti. |
AddCacheItemDependencies(String[]) |
Umožňuje, aby platnost položky uložené v mezipaměti byla závislá na jiné položce v mezipaměti. |
AddCacheItemDependency(String) |
Umožňuje, aby platnost odpovědi uložené v mezipaměti závisela na jiné položce v mezipaměti. |
AddFileDependencies(ArrayList) |
Přidá skupinu názvů souborů do kolekce názvů souborů, na kterých je závislá aktuální odpověď. |
AddFileDependencies(String[]) |
Přidá pole názvů souborů do kolekce názvů souborů, na kterých je aktuální odpověď závislá. |
AddFileDependency(String) |
Přidá jeden název souboru do kolekce názvů souborů, na kterých je aktuální odpověď závislá. |
AddHeader(String, String) |
Přidá hlavičku HTTP do výstupního datového proudu. AddHeader(String, String) z důvodu zajištění kompatibility s dřívějšími verzemi asp. |
AddOnSendingHeaders(Action<HttpContext>) |
Zaregistruje zpětné volání, které modul runtime ASP.NET vyvolá bezprostředně před odesláním hlaviček odpovědi na tento požadavek. |
AppendCookie(HttpCookie) |
Přidá soubor cookie HTTP do vnitřní kolekce souborů cookie. |
AppendHeader(String, String) |
Přidá hlavičku HTTP do výstupního datového proudu. |
AppendToLog(String) |
Přidá vlastní informace protokolu do souboru protokolu Internetové informační služby (IIS). |
ApplyAppPathModifier(String) |
Přidá ID relace do virtuální cesty, pokud relace používá Cookieless stav relace, a vrátí kombinovanou cestu. Pokud Cookieless není použit stav relace, ApplyAppPathModifier(String) vrátí původní virtuální cestu. |
BeginFlush(AsyncCallback, Object) |
Odešle klientovi odpověď, která je aktuálně ve vyrovnávací paměti. |
BinaryWrite(Byte[]) |
Zapíše řetězec binárních znaků do výstupního streamu HTTP. |
Clear() |
Vymaže veškerý výstup obsahu z datového proudu vyrovnávací paměti. |
ClearContent() |
Vymaže veškerý výstup obsahu z datového proudu vyrovnávací paměti. |
ClearHeaders() |
Vymaže všechna záhlaví z datového proudu vyrovnávací paměti. |
Close() |
Ukončí připojení soketu ke klientovi. |
DisableKernelCache() |
Zakáže ukládání jádra do mezipaměti pro aktuální odpověď. |
DisableUserCache() |
Zakáže ukládání do mezipaměti v uživatelském režimu služby IIS pro tuto odpověď. |
End() |
Odešle všechny aktuálně vyrovnávací výstupy do klienta, zastaví provádění stránky a vyvolá EndRequest událost. |
EndFlush(IAsyncResult) |
Dokončí operaci asynchronního vyprázdnění. |
Equals(Object) |
Určí, zda se zadaný objekt rovná aktuálnímu objektu. (Zděděno od Object) |
Flush() |
Odešle do klienta veškerý aktuálně vyrovnávací výstup. |
FlushAsync() |
Asynchronně odesílá veškerý aktuálně vyrovnávací výstup klientovi. |
GetHashCode() |
Slouží jako výchozí hashovací funkce. (Zděděno od Object) |
GetType() |
Type Získá z aktuální instance. (Zděděno od Object) |
MemberwiseClone() |
Vytvoří mělkou kopii aktuálního Objectsouboru . (Zděděno od Object) |
Pics(String) |
Připojí hlavičku HTTP |
PushPromise(String) |
Podporuje aplikace odesílající nabízené přísliby klientům HTTP 2.0. Další informace najdete v části Specifikace HTTP/2 Oddíl 8.2: Serverové nabízení. |
PushPromise(String, String, NameValueCollection) |
Podporuje aplikace odesílající nabízené přísliby klientům HTTP 2.0. Další informace najdete v části Specifikace HTTP/2 Oddíl 8.2: Serverové nabízení. |
Redirect(String) |
Přesměruje požadavek na novou adresu URL a určí novou adresu URL. |
Redirect(String, Boolean) |
Přesměruje klienta na novou adresu URL. Určuje novou adresu URL a jestli se má ukončit provádění aktuální stránky. |
RedirectPermanent(String) |
Provede trvalé přesměrování z požadované adresy URL na zadanou adresu URL. |
RedirectPermanent(String, Boolean) |
Provede trvalé přesměrování z požadované adresy URL na zadanou adresu URL a poskytne možnost dokončit odpověď. |
RedirectToRoute(Object) |
Přesměruje požadavek na novou adresu URL pomocí hodnot parametrů trasy. |
RedirectToRoute(RouteValueDictionary) |
Přesměruje požadavek na novou adresu URL pomocí hodnot parametrů trasy. |
RedirectToRoute(String) |
Přesměruje požadavek na novou adresu URL pomocí názvu trasy. |
RedirectToRoute(String, Object) |
Přesměruje požadavek na novou adresu URL pomocí hodnot parametrů trasy a názvu trasy. |
RedirectToRoute(String, RouteValueDictionary) |
Přesměruje požadavek na novou adresu URL pomocí hodnot parametrů trasy a názvu trasy. |
RedirectToRoutePermanent(Object) |
Provede trvalé přesměrování z požadované adresy URL na novou adresu URL pomocí hodnot parametrů trasy. |
RedirectToRoutePermanent(RouteValueDictionary) |
Provede trvalé přesměrování z požadované adresy URL na novou adresu URL pomocí hodnot parametrů trasy. |
RedirectToRoutePermanent(String) |
Provede trvalé přesměrování z požadované adresy URL na novou adresu URL pomocí názvu trasy. |
RedirectToRoutePermanent(String, Object) |
Provede trvalé přesměrování z požadované adresy URL na novou adresu URL pomocí hodnot parametrů trasy a názvu trasy, které odpovídají nové adrese URL. |
RedirectToRoutePermanent(String, RouteValueDictionary) |
Provede trvalé přesměrování z požadované adresy URL na novou adresu URL pomocí hodnot parametrů trasy a názvu trasy. |
RemoveOutputCacheItem(String) |
Odebere z mezipaměti všechny položky uložené v mezipaměti, které jsou přidružené k výchozímu poskytovateli výstupní mezipaměti. Tato metoda je statická. |
RemoveOutputCacheItem(String, String) |
Použije zadaného zprostředkovatele výstupní mezipaměti k odebrání všech položek výstupní mezipaměti, které jsou přidruženy k zadané cestě. |
SetCookie(HttpCookie) |
Vzhledem k tomu , HttpResponse.SetCookie metoda je určena pouze pro interní použití, neměli byste ji volat v kódu. Místo toho můžete volat Metodu HttpResponse.Cookies.Set , jak ukazuje následující příklad. |
ToString() |
Vrátí řetězec, který představuje aktuální objekt. (Zděděno od Object) |
TransmitFile(String) |
Zapíše zadaný soubor přímo do výstupního datového proudu odpovědi HTTP bez ukládání do vyrovnávací paměti. |
TransmitFile(String, Int64, Int64) |
Zapíše zadanou část souboru přímo do výstupního streamu odpovědi HTTP bez uložení do vyrovnávací paměti. |
Write(Char) |
Zapíše znak do výstupního streamu odpovědi HTTP. |
Write(Char[], Int32, Int32) |
Zapíše pole znaků do výstupního streamu odpovědi HTTP. |
Write(Object) |
Zapíše do Object streamu odpovědi HTTP. |
Write(String) |
Zapíše řetězec do výstupního streamu odpovědi HTTP. |
WriteFile(IntPtr, Int64, Int64) |
Zapíše zadaný soubor přímo do výstupního streamu odpovědi HTTP. |
WriteFile(String) |
Zapíše obsah zadaného souboru přímo do výstupního streamu odpovědi HTTP jako blok souboru. |
WriteFile(String, Boolean) |
Zapíše obsah zadaného souboru přímo do výstupního streamu odpovědi HTTP jako blok paměti. |
WriteFile(String, Int64, Int64) |
Zapíše zadaný soubor přímo do výstupního streamu odpovědi HTTP. |
WriteSubstitution(HttpResponseSubstitutionCallback) |
Umožňuje vložit do odpovědi bloky nahrazení odpovědí, což umožňuje dynamické generování zadaných oblastí odpovědi pro výstupní odpovědi uložené v mezipaměti. |