Změna stylu: Standardní Dřevo Jaro Léto Léto2 Potápěč :-) Údolí stínů

Objekt Response

Objekt Response obsahuje metody pro vytváření odpovědi odesílané klientovi.

Metody

Metoda AddHeader

Metoda AddHeader slouží k vytváření nebo změně hodnoty HTTP hlaviček.

Například příkazem

Response.AddHeader "WWW-Authenticate", "BASIC"

nastavíme hodnotu hlavičky WWW-Authenticate na hodnotu BASIC.

Stejnou hlavičku můžeme lze nastavit i HTML příkazem:

<META HTTP-EQUIV="WWW-Authenticate" CONTENT="BASIC">

Všechny hlavičky musí být odeslány dříve, než je odeslán jakýkoli jiný výstup. Hlavičky přidané metodou AddHeader již nelze dodatečně odstranit. Názvy hlaviček nesmějí obsahovat podtržítko, protože by bylo nesprávně interpretováno jako pomlčka.

Metoda AppendToLog

Metoda AppendToLog přidá zadaný text na konec logového souboru webserveru.

Metoda BinaryWrite

Metoda BinaryWrite zapíše obsah zadaného parametru do výstupního HTTP proudu, aniž by byla prováděna libovolná konverze znaků. Tato metoda je vhodná například pro odesílání binárních dat při generování souboru s obrázkem a podobně.

Metoda Clear

Metoda Clear vymaže obsah vyrovnávací paměti používané pro odesílání generované stránky. Tato metoda se často používá společně s metodou Response.End, chceme-li zabránit odeslání obsahu bufferu klientovi.

Pokud není atribut Response.Buffer nastaven na hodnotu True, způsobí použití metody Clear vyvolání runtime chyby.

Metoda Clear také nezruší odeslané HTTP hlavičky. Metoda Clear dokáže zrušit pouze obsah vygenerovaný po posledním použití metody Response.Flush.

Metoda End

Metoda End způsobí, že ASP přestane zpracovávat skript stránky a odešle dosud vygenerovaný obsah. Další příkazy skriptu již nejsou zpracovány.

Jestliže má atribut Buffer hodnotu True, odešle se obsah bufferu jako při zavolání metody Flush. Proto se obvykle používá společně s metodou Clear, aby se zabránilo odeslání obsahu bufferu.

Response.Clear
Response.End

Metoda Flush

Metoda Flush způsobí odeslání obsahu bufferu klientovi.

Pokud není atribut Buffer nastaven na hodnotu True, dojde při volání metody k runtime chybě.

Metoda PICS

Zkratka PICS znamená Platform for Internet Control Selection. Jedná se o technologii umožňující označování stránek informací o typu obsahu. Označení PICS v sobě obsahuje například informace o množství násilí, nahoty, sexu a o stupni vulgárnosti jazyka použitého ve stránce. Více informací o označování stránek podle obsahu naleznete na stránkách Internet Content Rating Association.

Metoda Redirect

Metoda Redirect odešle klientovi HTTP hlavičku "302 Object Moved", čímž způsobí přesměrování klienta na zadanou URL adresu.

Příklad přesměrování na stránky Západočeské univerzity v Plzni:

Response.Redirect "http://www.zcu.cz"

Přesměrování metodou Redirect je možné provést jen před odesláním libovolného generovaného obsahu, protože se provádí pomocí odeslání HTTP hlavičky.

Metoda Write

Metoda Write zapíše zadaný text do výstupního HTTP proudu, čímž se text stane součástí obsahu odesílaného klientovi.

Místo volání

Response.Write(text)

je možné použít zkrácený zápis

<%= text %>

Při vícenásobném volání metody Response.Write není vhodné používat zkrácený zápis, neboť pak dochází k častému přepínání kontextu mezi ASP a HTML, což vyžaduje jistý čas.

Stránka bude zpracována rychleji, když použijeme

With Response
  .Write "Tento text "
  .Write "byl vypsán s použitím "
  .Write "konstrukce With."
End With

než v případě použití

<%= "Tento text " %>
<%= "byl vypsán s použitím " %>
<%= "zkráceného zápisu." %> 

Atributy

Nastavování hodnot atributů objektu Response (kromě atributu IsClientConnected) ovlivňuje HTTP hlavičky odesílané klientovi. Proto je nutné tyto atributy nastavit před odesláním prvního znaku klientovi.

Atribut Buffer

Hodnota atributu Buffer určuje, zda má ASP používat vyrovnávací paměť nebo zda má být veškeré informace klientovi odesílány přímo.

Hodnota tohoto atributu musí být nastavena ještě před odesíláním HTTP hlaviček.

V případě, že má atribut Buffer nastavenu hodnotu False, způsobí použití metod Response.Flush a Response.Clear runtime chybu.

Atribut CacheControl

Hodnota atributu CacheControl určuje, zda může proxy server ukládat vygenerovanou stránku do své paměti cache.

Atribut CacheControl může mít hodnotu "Private" (ukládání do cache je zakázáno) nebo "Public" (ukládání do cache je povoleno). Implicitně je nastavena hodnota "Private".

Atribut Charset

Hodnota atributu Charset slouží pro nastavení znakové sady dokumentu a je přidávána do HTTP hlavičky Content-Type. Tím je zajištěno správné zobrazení stránky v prohlížeči.

Příkaz

Response.Charset = 'iso-8859-2'

způsobí odeslání hlavičky

content-type: text/html; charset=iso-8859-2

Atribut ContentType

Tento atribut slouží pro nastavení HTTP hlavičky Content-Type, která obsahuje informaci o typu dokumentu (tzv. MIME typ). Implicitní hodnota je "text/html".

Pokud například generujeme ASP skriptem obrázek ve formátu GIF, musíme nastavit hodnotu tohoto atributu na "image/gif".

Následující tabulka obsahuje přehled nejběžnějších MIME typů.

Typ MIME Popis Přípona souboru
application/acad Soubory AutoCAD Drawing .dwg
application/clariscad Soubory ClarisCAD .ccad
application/dxf DXF (AutoCAD) .dxf
application/msaccess Soubor Microsoft Access .mdb
application/msword Soubor Microsoft Word .doc
application/octet-stream Blíže neurčený binární soubor .bin
application/pdf PDF (Adobe Acrobat) .pdf
application/postscript PostScript, encapsulated PostScript, Adobe Illustrator .ps, .eps, .ai
application/rtf Rich Text Format .rtf
application/vnd.ms-excel Soubor Microsoft Excel .xls
application/vnd.ms-powerpoint Soubor Microsoft Power Point .ppt
application/x-cdf Chanel Definition File .cdf
application/x-csh Skript C-shell .csh
application/x-dvi TeX .dvi
application/x-javascript Zdrojový soubor JavaScript .js
application/x-latex Zdroj text pro LaTeX .latex
application/x-mif Formát FrameMaker MIF .mif
application/x-msexcel Soubor Microsoft Excel .xls
application/x-mspowerpoint Soubor Microsoft Power Point .ppt
application/x-tcl Skript TCL .tcl
application/x-tex Zdrojový text pro TeX .tex
application/x-texinfo Texinfo (emacs) .texinfo, .texi
application/x-troff Troff .t, .tr, .troff
application/x-troff-man Troff s makry MAN .man
application/x-troff-me Troff s makry ME .me
application/x-troff-ms Troff s makry MS .ms
application/x-wais-source Zdroj WAIS .src
application/zip Archív ZIP .zip
audio/basic Základní zvuk (obvykle m-law) .au, .snd
audio/x-aiff Zvuk AIFF .aif, .aiff, .aifc
audio/x-wav Zvuk Windows WAVE .wav
image/gif Obrázek GIF .gif
image/ief Image Exchange Format .ief
image/jpeg Obrázek JPEG .jpeg, .jpg, .jpe
image/tiff Obrázek TIFF .tiff, .tif
image/x-cmu-raster CMU Raster .ras
image/x-portable-anymap Formát PBM Anymap .pnm
image/x-portable-bitmap Formát PBM Bitmap .pbm
image/x-portable-graymap Formát PBM Graymap .pgm
image/x-portable-pixmap Formát PBM Pixmap .ppm
image/x-rgb Obrázek RGB .rgb
image/x-xbitmap X Bitmap .xbm
image/x-xpixmap X Pixmap .xpm
image/x-xwindowdump Formát X Windows Dump (xwd) .xwd
multipart/x-gzip Archív GNU ZIP .gzip
multipart/x-zip Archív PKZIP .zip
text/css Zdroj Cascading Style Sheet .css
text/html Soubor HTML .html, .htm
text/plain Plain Text .txt
text/richtext MIME Rich Text .rtx
text/tab-separated-values Text s hodnotami oddělenými tabulátory .tsv
text/x-setext Struct-Enhanced Text .etx
text/xml Text ve formátu XML .xml
video/mpeg Video MPEG .mpeg, .mpg, .mpe
video/quicktime Video QuickTime .qt, .mov
video/x-msvideo Video Microsoft Windows .avi
video/x-sgi-movie Formát SGI Movieplayer .movie

Další informace o MIME typech naleznete na adrese http://www.rad.com/networks/1995/mime/mime.htm.

Atribut Expires

V případě, že jste povolili nastavením atributu CacheControl ukládání stránky do cache, obsahuje tento atribut délku platnosti stránky v minutách. Do vypršení platnosti je klientovi zobrazována stránka uložená v cache. Po vypršení platnosti je stránka znovu vygenerována.

Chceme-li, aby platnost stránky byla 10 minut, použijeme:

Response.Expires = 10

Pokud chceme, aby se stránka neukládala v cache, nastavíme hodnotu atributu na velké záporné číslo (např. -10000), čímž se zamezí problémům s různými časy na serveru a klientovi.

Pokud je hodnota atributu v jedné stránce nastavena vícekrát, použije se první nastavená hodnota.

Atribut ExpiresAbsolute

Tento atribut má stejnou funkci jako atribut Expires. V tomto atributu se však nenastavuje doba platnosti stránky, ale přímo datum a čas, kdy skončí platnost stránky.

Příklad nastavení času vypršení platnosti stránky:

Response.ExpiresAbsolute = #Dec 31, 2003 23:59:59#

Atribut IsClientConnected

Hodnotu tohoto atributu lze pouze číst. Hodnota True znamená, že je klient stále připojen a načítá stránku, hodnota False znamená, že klient již přestal stránku načítat.

Hodnota tohoto atributu může být použita například pro ukončení zpracování stránky v případě, že již klient přešel na jinou stránku, než se tato stránka kompletně zpracovala.

If Not Response.IsClientConnected Then
    Response.End
End If

Atribut Status

Tento atribut obsahuje stavovou hodnotu a zprávu, která se odešle klientovi jako informace, zda byla stránka úspěšne zpracována nebo zda došlo k nějaké chybě.

Příklady běžných zpráv:

Response.Status = "200 OK"
Response.Status = "404 Not Found"

Kolekce

Objekt Response obsahuje jedinou kolekci.

Kolekce Cookies

Kolekce Response.Cookies slouží pro nastavení hodnot cookies odesílaných klientovi. Pro zjištění hodnot cookies uložených u klienta se používá kolekce Request.Cookies.

Obdrží-li klient odpověď na HTTP požadavek, uloží cookies podle obsahu kolekce Response.Cookies. Pokud již na klientovi je uložena cookie se zadaným jménem, je přepsána novou hodnotou.

Hodnota jednoduché cookie se nastaví např. příkazem:

Response.Cookies("UzivatelskeJmeno") = "JNovak"

Hodnoty pro vícehodnotovou cookie můžeme nastavit například příkazy:

Response.Cookies("Uzivatel", "Jmeno") = "Jan"
Response.Cookies("Uzivatel", "Prijmeni") = "Novák"

Prvky kolekce Cookies

Každá položka kolekce Response.Cookie je opět kolekcí, která má kromě standardních vlastností všech kolekcí navíc ještě atributy Domain, Expires, HasKeys, Path a Secure.

Atribut Domain

Slouží pro nastavení domény, z níž bude daná cookie viditelná. Hodnotu tohoto atributu nelze číst, ale pouze nastavovat. Implicitní hodnota odpovídá doméně dané stránky.

Atribut Expires

Tento atribut umožňuje nastavit datum ukončení platnosti dané cookie. Hodnotu tohoto atributu nelze číst, ale pouze nastavovat. Hodnota se zadává jako absolutní časový údaj.

Chceme-li například nastavit, aby platnost cookie vypršela za 6 měsíců, použijeme příkaz:

Response.Cookies("UzivatelskeJmeno").Expires = DateAdd("m", 6, Now)

Chceme-li nastavit datum ukončení platnosti cookie na konkrétní datum, použijeme například:

Response.Cookies("UzivatelskeJmeno").Expires = #January 1, 2003#
Atribut HasKeys

Hodnotu tohoto atributu lze pouze číst. Hodnota False znamená, že se jedná o jednoduchou cookie, hodnota True znamená, že jde o vícehodnotovou cookie.

Pozor, pokud nastavíte hodnotu podklíče u vícehodnotové cookie, která již u klienta existuje, ztratí se i hodnoty ostatních podklíčů dané cookie.

Atribut Path

Hodnotou tohoto atributu můžeme ovlivnit viditelnost dané cookie. Pokud nastavíme hodnotu atributu Path, bude daná cookie viditelná pouze ze stránek ležících v dané cestě.

Implicitně je nastaven kořenový adresář dané ASP aplikace.

Atribut Secure

Nastavíme-li hodnotu atributu Secure na hodnotu True, bude daná cookie předávána pouze při použití zabezpečeného protokolu HTTPS. Na straně klienta je však obsah cookie ukládán v otevřené (nezašifrované) podobě.


Hlavní stránka