Active Server Pages
ASP-koulutus / kurssit v. 2008
Kurssit saatavilla kautta Suomen. Tule, tutustu ja varaa oma koulutustapahtumasi jo tänään. Kurssit järjestää IT-koulutuksen asiantuntijasi, Koulutus- ja konsultointipalvelu KK Mediat
Response olion muita ominaisuuksia
Response.IsClientConnected
Response.IsClientConnected on eräs ASP:n tärkeimmistä piirteistä skriptien ja palvelimen suorituskyvyn kannalta, sillä sen avulla voidaan tarkkailla asiakkaan aktiivisuutta. Mikäli asiakas katkaisee yhteyden palvelimeen, voidaan prosessiin varatut resurssit välittömästi vapauttaa. Tarkistus suoritetaan automaattisesti jokaisen Response.Write kutsun jälkeen tai Response.IsClientConnected ominaisuutta tarkastettaessa.
Alla olevassa esimerkissä suoritetaan asiakkaan aktiivisuuden tarkistus (rivit #3-6), ennen kuin tietokannan tulosjoukolle suoritetaan joukko suorituskykyä vaativia toimintoja (rivit #8-12):
<%
...
If Response.IsClientConnected = False Then
' katkaise yhteys
Response.End
End If
Do until (rsTulosjoukko.eof)
fKumulatiivinenSumma = fKumulatiivinenSumma + rsTulosjoukko("kentta1")
...
rsTulosjoukko.MoveNext
Loop
...
%>
Response.PICS
PICS (Platform for Internet Content Selection) on hyvinkin harvoin käytetty web-sisällön luokittelumenetelmä. PICS on W3C-standardi, jonka avulla sivuston omistaja voi ilmoittaa sivun sisältö/kohderyhmän. Koska PICS-ominaisuus ilmoitetaan HTTP-otsikoissa, täytyy se määritellä ennen sisällöntulostamista asiakkaalle.
PICS voi saada seuraavat arvot:
- 0: alastomuus
- 1: väkivalta
- 2: seksi
- 3: karkea kieli
Arvo voidaan määritellä joko sivu kerrallaan Response.PICS-ominaisuuden avulla, tai IIS:n oman hallintapaneelin kautta koko sivustolle / kansiolle.
Response.Status - HTTP statuskoodin määritys
Response.Status-ominaisuus määrittää palvelimen palauttaman HTTP-statuskoodin määrätylle resurssille. Kyseessä on näppärä tapa esim. laatia suojattuja alueita sivustolle tai kieltää hakukoneiden robotteja ryömimästä määrättyjä sivuja.
Alla oleva esimerkki tarkistaa käyttäjän IP-osoitteen ja vertaa sitä (tässä tapauksessa arvoon xxx.xxx.xxx.xxx). Mikäli arvo on eri, niin asiakkaalle palautetaan statuskoodi 403 Access Forbidden. Käyttäjän selain näyttää tällöin käyttäjälle asiaan kuuluvan virheilmoituksen.
<%
IPAddress = Request.ServerVariables("REMOTE_ADDR")
If IPAddress <> "xxx.xxx.xxx.xxx" Then
Response.Status = "403 Access Forbidden"
Response.Write Response.Status
Response.End
End If
%>
Response.Expires ja Response.ExpiresAbsolute - välimuistin hallinta
Oletusarvoisesti kaikki HTTP-liikenne kulkee yhden jos toisenkin välimuistin (esim. proxy-palvelin, selaimen välimuisti jne) kautta, jotka voivat tarjoilla käyttäjän pyytämän resurssin. On olemassa kuitenkin tilanteita, esim. reaaliaikaiset huutokaupat ja taloushallinnon sovellukset, joissa asiakkaalle tarjoiltavan tiedon on kaikissa tilanteissa oltava reaaliaikaista ja alkuperäisestä lähteestä. Tätä varten ASP sisältää joukon välimuistin hallintaan liittyviä ominaisuuksia, näistä tärkeimpinä Response.Expires, Response.ExpiresAbsolute ja Response.CacheControl .
Ominaisuus Response.Expires määrittää ajanjakson, jonka sisältö voi olla tallennettuna välimuistiin. Negatiivinen arvo -1 tarkoittaa "älä tallenna sivun sisältöä välimuistiin". Response.ExpiresAbsolute - ominaisuuden avulla ekspiroituminen voidaan viedä kauemmas tulevaisuuteen antamalla argumentiksi päivämäärä ja kellonaika.
Koska etenkin proxy-palvelimilla on hyvin vaihtelevainen kyky/taipumus käsitellä sivuston antamia välimuistikomentoja, voi pyyntöä tukea mm. Response.CacheControl-ominaisuuden käskyllä "no-cache". Alla oleva esimerkki on kohtalaisen kattava "välimuistin ja prefetching"-menetelmien estämiskomento:
<%
Response.Expires = -1
Response.ExpiresAbsolute = Now() - 2
Response.AddHeader "Pragma", "no-cache
Response.AddHeader "cache-control","private, no-cache, must-revalidate"
Response.CacheControl = "no-cache"
%>
Tutustu artikkelin muihin osiin:
»»» ASP »»»Response olio
»»» ASP »»»Datan kirjoittaminen ja tulostuksen puskurointi (Response.Write ja Response.Buffer)
»»» ASP »»»Edistynyt tulostuksen hallinta (Response.Charset ja Response.ContentType)
»»» ASP »»»Response olion muita ominaisuuksia
»»» ASP »»»Response.Cookies ja eväste-datan käsittely
»»» ASP »»»Response.addHeader ja Response.AppendToLog
»»» ASP »»»Response.Redirect ja Response.BinaryWrite
Tallenna tämä sivu kirjanmerkkeihin!