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řuje 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 při vyžádání stránky. Kód začíná nastavením ContentType vlastnosti na image/jpeg, aby se celá stránka vykreslovala jako obrázek JPEG. Kód pak zavolá metodu Clear , aby se zajistilo, že se touto odpovědí neposílají nadbytečný obsah. Dále kód nastaví BufferOutput vlastnost na true, aby stránka byla zcela zpracována před odesláním do žádajícího klienta. K nakreslení obdélníků se pak vytvoří dva objekty: a BitmapGraphics objekt. Proměnné vytvořené na stránce se používají jako souřadnice k vykreslení 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 zobrazí uvnitř, Bitmap je uložen do Stream objektu přidruženého OutputStream k vlastnosti a jeho formát je nastaven na JPEG. Kód volá Dispose metody a Dispose uvolní prostředky používané dvěma nakreslených objekty. Nakonec kód volá metodu Flush , která odešle odpověď do vyrovnávací paměti žádajícímu klientovi.
Poznámka:
V kódu je HttpResponse objekt odkazován klíčovým slovem Response. Například Response.Clear() odkazuje na metodu HttpResponse.Clear . Třída Page má vlastnost, která je pojmenována Response , která zveřejňuje aktuální instanci 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 HttpApplication, HttpContext, Pagea UserControl třídy.
Následující metody HttpResponse třídy jsou podporovány pouze ve scénářích post back a ne v asynchronních scénářích post back:
- BinaryWrite
- Clear
- ClearContent
- ClearHeaders
- Close
- End
- Flush
- TransmitFile
- Write
- WriteFile
- WriteSubstitution
Částečné aktualizace stránek jsou povoleny, když pomocí UpdatePanel ovládacích prvků aktualizujete vybrané oblasti stránky místo aktualizace celé stránky příspěvkem zpět. Další informace naleznete v tématu Přehled ovládacího prvku UpdatePanel a přehledPartial-Page Vykreslování.
Konstruktory
| Name | Description |
|---|---|
| HttpResponse(TextWriter) |
Inicializuje novou instanci HttpResponse třídy. |
Vlastnosti
| Name | Description |
|---|---|
| Buffer |
Získá nebo nastaví hodnotu určující, zda se má výstup vyrovnávací paměti a odeslat ho po dokončení zpracování úplné odpovědi. |
| BufferOutput |
Získá nebo nastaví hodnotu určující, zda se má výstup vyrovnávací paměti a odeslat ho 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 různé klauzule) 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 zahozen 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 v mezipaměti v prohlížeči. Pokud se uživatel před vypršením platnosti vrátí na stejnou stránku, zobrazí se verze uložená v mezipaměti. Expires je poskytována z důvodu kompatibility se staršími verzemi ASP. |
| ExpiresAbsolute |
Získá nebo nastaví absolutní datum a čas, ve kterém se mají odebrat informace uložené v mezipaměti. ExpiresAbsolute je poskytována z důvodu kompatibility se staršími verzemi ASP. |
| Filter |
Získá nebo nastaví objekt filtru obtékání, 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í výstupní datový proud záhlaví. |
| Headers |
Získá kolekci hlaviček odpovědí. |
| HeadersWritten |
Získá hodnotu určující, zda hlavičky odpovědi byly zapsány. |
| IsClientConnected |
Získá hodnotu určující, zda klient je stále připojen k serveru. |
| IsRequestBeingRedirected |
Získá logickou hodnotu označující, zda se klient přenáší do nového umístění. |
| Output |
Umožňuje výstup textu do odchozího streamu odpovědí HTTP. |
| OutputStream |
Povolí binární výstup do textu 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 opravňují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 určující, zda odeslat obsah HTTP klientovi. |
| SuppressDefaultCacheControlHeader |
Získá nebo nastaví hodnotu určující, zda má potlačit výchozí |
| SuppressFormsAuthenticationRedirect |
Získá nebo nastaví hodnotu, která určuje, zda se má potlačit přesměrování ověřování pomocí formulářů na přihlašovací stránku. |
| TrySkipIisCustomErrors |
Získá nebo nastaví hodnotu, která určuje, zda jsou vlastní chyby IIS 7.0 zakázány. |
Metody
| Name | Description |
|---|---|
| AddCacheDependency(CacheDependency[]) |
Přidruží sadu závislostí mezipaměti k odpovědi, která usnadňuje zneplatnění odpovědi, pokud je uložena ve výstupní mezipaměti a zadaná změna závislostí. |
| AddCacheItemDependencies(ArrayList) |
Nastaví platnost odpovědi uložené v mezipaměti na závislosti na jiných položkách v mezipaměti. |
| AddCacheItemDependencies(String[]) |
Způsobí, že platnost položky uložené v mezipaměti závisí na jiné položce v mezipaměti. |
| AddCacheItemDependency(String) |
Zneplatní platnost odpovědi uložené v mezipaměti na jiné položce v mezipaměti. |
| AddFileDependencies(ArrayList) |
Přidá skupinu názvů souborů do kolekce názvů souborů, na kterých je aktuální odpověď závislá. |
| 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) je poskytována z důvodu kompatibility se staršími verzemi ASP. |
| AddOnSendingHeaders(Action<HttpContext>) |
Zaregistruje zpětné volání, které modul runtime ASP.NET vyvolá okamžitě před odesláním hlaviček odpovědí pro 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 se stav relace nepoužívá, ApplyAppPathModifier(String) vrátí původní virtuální cestu. |
| BeginFlush(AsyncCallback, Object) |
Odešle aktuálně vyrovnávací paměť odpovědi klientovi. |
| BinaryWrite(Byte[]) |
Zapíše řetězec binárních znaků do výstupního datového proudu HTTP. |
| Clear() |
Vymaže veškerý výstup obsahu z streamu vyrovnávací paměti. |
| ClearContent() |
Vymaže veškerý výstup obsahu z streamu vyrovnávací paměti. |
| ClearHeaders() |
Vymaže všechna záhlaví z datového proudu vyrovnávací paměti. |
| Close() |
Zavře připojení soketu k 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 veškerý aktuálně vyrovnávací paměť výstup klientovi, zastaví spuštění stránky a vyvolá EndRequest událost. |
| EndFlush(IAsyncResult) |
Dokončí asynchronní operaci vyprázdnění. |
| Equals(Object) |
Určuje, zda je zadaný objekt roven aktuálnímu objektu. (Zděděno od Object) |
| Flush() |
Odešle veškerý aktuálně vyrovnávací paměť výstup klientovi. |
| FlushAsync() |
Asynchronně odešle do klienta veškerý aktuálně vyrovnávací paměť výstupu. |
| GetHashCode() |
Slouží jako výchozí funkce hash. (Zděděno od Object) |
| GetType() |
Získá Type aktuální instance. (Zděděno od Object) |
| MemberwiseClone() |
Vytvoří mělkou kopii aktuálního Object. (Zděděno od Object) |
| Pics(String) |
Připojí hlavičku HTTP |
| PushPromise(String, String, NameValueCollection) |
Podporuje aplikace odesílající nabízené sliby klientům HTTP 2.0. Další informace naleznete v části specifikace HTTP/2 8.2: Server Push. |
| PushPromise(String) |
Podporuje aplikace odesílající nabízené sliby klientům HTTP 2.0. Další informace naleznete v části specifikace HTTP/2 8.2: Server Push. |
| Redirect(String, Boolean) |
Přesměruje klienta na novou adresu URL. Určuje novou adresu URL a zda má být ukončeno spuštění aktuální stránky. |
| Redirect(String) |
Přesměruje požadavek na novou adresu URL a určí novou 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čení odpovědi. |
| RedirectPermanent(String) |
Provede trvalé přesměrování z požadované adresy URL na zadanou adresu URL. |
| 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, 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. |
| RedirectToRoute(String) |
Přesměruje požadavek na novou adresu URL pomocí 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, 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ídá 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. |
| RedirectToRoutePermanent(String) |
Provede trvalé přesměrování z požadované adresy URL na novou adresu URL pomocí názvu trasy. |
| RemoveOutputCacheItem(String, String) |
Pomocí zadaného zprostředkovatele výstupní mezipaměti odebere všechny položky výstupní mezipaměti, které jsou přidružené k zadané cestě. |
| 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á. |
| SetCookie(HttpCookie) |
Protože Metoda HttpResponse.SetCookie je určena pouze pro interní použití, neměli byste ji volat v kódu. Místo toho můžete volat HttpResponse.Cookies.Set metoda, 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, Int64, Int64) |
Zapíše zadanou část souboru přímo do výstupního datového proudu odpovědi HTTP bez uložení do vyrovnávací paměti. |
| TransmitFile(String) |
Zapíše zadaný soubor přímo do výstupního datového proudu odpovědi HTTP bez uložení do vyrovnávací paměti. |
| Write(Char) |
Zapíše znak do výstupního datového proudu odpovědi HTTP. |
| Write(Char[], Int32, Int32) |
Zapíše pole znaků do výstupního datového proudu odpovědi HTTP. |
| Write(Object) |
Object Zapíše stream 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 datového proudu odpovědi HTTP. |
| WriteFile(String, Boolean) |
Zapíše obsah zadaného souboru přímo do výstupního datového proudu odpovědi HTTP jako blok paměti. |
| WriteFile(String, Int64, Int64) |
Zapíše zadaný soubor přímo do výstupního datového proudu odpovědi HTTP. |
| WriteFile(String) |
Zapíše obsah zadaného souboru přímo do výstupního datového proudu odpovědi HTTP jako blok souboru. |
| WriteSubstitution(HttpResponseSubstitutionCallback) |
Umožňuje vložení bloků nahrazení odpovědí do odpovědi, což umožňuje dynamické generování zadaných oblastí odpovědí pro výstupní odpovědi uložené v mezipaměti. |