Zbiór Cookies ASP
Zbiór Cookies używany do ustawiania lub uzyskiwania wartości cookie. Jeśli cookie nie istnieje, jest tworzony i przypisywana mu określona wartość.
Komentarz:Polecenie Response.Cookies musi znajdować się przed znacznikiem <html>.
Gramatyka:
Response.Cookies(name)[(key)|.attribute]=value variablename=Request.Cookies(name)[(key)|.attribute]
Parametry | Opis |
---|---|
name | Wymagane. Nazwa cookie. |
value | Wymagane (dla polecenia Response.Cookies). Wartość cookie. |
attribute | Opcjonalnie. Informacje dotyczące cookie. Może to być jeden z poniższych parametrów.
|
key | Opcjonalnie. Klucz, w którym wartość jest przypisywana. |
Przykład
"Response.Cookies" poleca tworzenie cookie lub ustawianie wartości cookie:
<% Response.Cookies("firstname")="Alex" %>
W powyższym kodzie utworzyliśmy cookie o nazwie "firstname" i przypisaliśmy mu wartość "alex".
Można również ustawić atrybuty cookie, na przykład ustawić datę wygaśnięcia cookie:
<% Response.Cookies("firstname")="Alex" Response.Cookies("firstname").Expires=#May 10,2002# %>
Obecnie wartość cookie o nazwie "firstname" wynosi "Alex", a jego data wygaśnięcia w komputerze użytkownika to 10 maja 2002 roku.
"Request.Cookies" polega na pobraniu wartości cookie.
W poniższym przykładzie pobieramy wartość cookie "firstname" i wyświetlamy ją na stronie:
<% fname=Request.Cookies("firstname") response.write("Firstname=" & fname) %>
Wynik:
Firstname=Alex
Cookie może zawierać kolekcję wielowartościową. Nazywamy to cookie z kluczem.
W poniższym przykładzie chcemy utworzyć kolekcję cookie o nazwie "user". Cookie "user" zawiera klucze zawierające informacje o użytkowniku.
<% Response.Cookies("user")("firstname")="John" Response.Cookies("user")("lastname")="Adams" Response.Cookies("user")("country")="UK" Response.Cookies("user")("age")="25" %>
Poniżej znajduje się kod, który może odczytać wszystkie cookie, które serwer wysłał do użytkownika. Proszę zauważyć, że użyliśmy atrybutu HasKeys, aby sprawdzić, czy cookie ma klucz:
<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> %>
Wynik:
firstname=Alex user:firstname=John user:lastname=Adams user: country=UK user: age=25