ASP Cookie

Cookie käytetään yleisesti käyttäjien tunnistamiseen.

Esimerkki

Tervetulo-cookie
Kuinka luoda tervetulo-cookie.

Mikä on Cookie?

Cookie käytetään yleisesti käyttäjien tunnistamiseen. Cookie on pieni tiedosto, jonka palvelin jättää käyttäjän tietokoneeseen. Jokaisella kerralla, kun sama tietokone pyytää sivua selaimen kautta, se lähettää myös cookie. ASP:n avulla voit luoda ja hakea cookie-arvoja.

Miten luodaan cookie?

"Response.Cookies"-komento käytetään cookiejen luomiseen.

Huomioitavaa:Response.Cookies-komento täytyy sijoittaa <html>-tagin eteen.

Seuraavassa esimerkissä luomme "firstname"-nimisen cookie ja asetamme sille arvon "Alex":

<%
Response.Cookies("firstname")="Alex"
%>

On myös mahdollista määrittää cookie-ominaisuuksia, kuten asettaa cookie:n vanhenemisaika:

<%
Response.Cookies("firstname")="Alex" 
Response.Cookies("firstname").Expires=#May 10,2020#
%>

Miten haetaan cookie-arvo?

"Request.Cookies"-komento käytetään cookie-arvon hakemiseen.

Seuraavassa esimerkissä haemme "firstname"-nimisen cookie-arvon ja näytämme sen sivulla:

<%
fname=Request.Cookies("firstname")
response.write("Firstname=" & fname)
%>

Tulostus:

Firstname=Alex

Avainta omaava cookie

Jos cookie sisältää useita arvoja, voimme sanoa, että cookie omaa avaimia (Keys).

Seuraavassa esimerkissä luomme "user"-nimisen cookie-kerän. "user"-cookie sisältää avaimia, jotka sisältävät käyttäjän tiedot:

<%
Response.Cookies("user")("firstname")="John"
Response.Cookies("user")("lastname")="Adams"
Response.Cookies("user")("country")="UK"
Response.Cookies("user")("age")="25"
%>

Lue kaikki cookie-tiedostot

Lue seuraava koodi:

<%
Response.Cookies("firstname")="Alex"
Response.Cookies("user")("firstname")="John"
Response.Cookies("user")("lastname")="Adams"
Response.Cookies("user")("country")="UK"
Response.Cookies("user")("age")="25"
%>

Oletetaan, että palvelimesi lähettää kaikki nämä cookie-tiedostot käyttäjälle.

Nyt meidän täytyy lukea nämä cookie-tiedostot. Tässä esimerkissä näytetään, miten tämä tehdään (huomaa, että seuraava koodi käyttää HasKeys -tarkistusta, jotta tarkistetaan, omaavatko cookie-avaimet arvoja):

<html>
<body>
<%
dim x,y
 for each x in Request.Cookies
  response.write("<p>")
  if Request.Cookies(x).HasKeys then
    for each y in Request.Cookies(x)
      response.write(x & ":" & y & "=" & Request.Cookies(x)(y))
      response.write("<br />")
    next
  else
    Response.Write(x & "=" & Request.Cookies(x) & "<br />")
  end if
  response.write "</p>"
next
%>
</body>
</html>

Tulostus:

firstname=Alex
user:firstname=John
user:lastname=Adams
user:country=UK
user:age=25

Miten käsitellä cookeja tukevia selaimia ei-tukevia selaimia?

Jos sovelluksesi on vuorovaikutuksessa selaimien kanssa, jotka eivät tue cookeja, sinun on käytettävä muita tapoja siirtää tietoja sivulta toiselle sovelluksessasi. Tässä on kaksi tapaa:

1. Lisää parametreja URL-osoitteeseen

Voit lisätä parametreja URL-osoitteeseen:

<a href="welcome.asp?fname=John&lname=Adams">
Siirry tervetuloa-sivulle
</a>

Sitten haetaan nämä arvot esimerkiksi seuraavasta "welcome.asp"-tiedostosta:

<%
fname=Request.querystring("fname")
lname=Request.querystring("lname")
response.write("<p>Hello " & fname & " " & lname & "!</p>")
response.write("<p>Tervetuloa verkkosivustolleni!</p>")
%>

2. Käytä lomaketta

Voit käyttää myös lomaketta. Kun käyttäjä napsauttaa lähetä-painiketta, lomake lähettää käyttäjän syöttämät tiedot "welcome.asp":

<form method="post" action="welcome.asp">
Etunimi:  <input type="text" name="fname" value="">
Sukunimi: <input type="text" name="lname" value="">
<input type="submit" value="Submit">
</form>

Sitten haetaan nämä arvot "welcome.asp"-tiedostosta, kuten näin:

<%
fname=Request.form("fname")
lname=Request.form("lname")
response.write("<p>Hello " & fname & " " & lname & "!</p>")
response.write("<p>Tervetuloa verkkosivustolleni!</p>")
%>