ASP Cookie

Cookies werden häufig verwendet, um Benutzer zu identifizieren.

Beispiel

Willkommenscookie
Wie erstellt man ein willkommenes Cookie.

Was ist ein Cookie?

Cookies werden häufig verwendet, um Benutzer zu identifizieren. Ein Cookie ist eine kleine Datei, die ein Server auf dem Computer des Benutzers speichert. Jedes Mal, wenn das gleiche Computer über einen Browser eine Seite anfordert, sendet dieser Computer auch ein Cookie. Mit ASP können Sie Cookies erstellen und deren Werte abrufen.

Wie erstellt man Cookies?

"Response.Cookies"-Befehl wird verwendet, um Cookies zu erstellen.

Hinweis:Der Befehl Response.Cookies muss vor den <html>-Tags stehen.

In folgendem Beispiel erstellen wir einen "firstname"-Cookie und weisen ihm den Wert "Alex" zu:

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

Es ist auch möglich, Attribute an Cookies zuweisen, z.B. das Ablaufdatum des Cookies zu setzen:

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

Wie wird der Wert des Cookies abgerufen?

"Request.Cookies"-Befehl wird verwendet, um den Wert des Cookies abzurufen.

In folgendem Beispiel haben wir den Wert des "firstname"-Cookies zurückgeholt und diesen Wert auf der Seite angezeigt:

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

Ausgabe:

Firstname=Alex

Cookies mit Schlüsseln

Wenn ein Cookie eine Sammlung mehrerer Werte enthält, können wir sagen, dass der Cookie Schlüssel (Keys) hat.

In folgendem Beispiel erstellen wir eine Sammlung von "user"-Cookies. Der "user"-Cookie hat Schlüssel, die Benutzerinformationen enthalten:

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

Lesen Sie alle Cookies

Lesen Sie den folgenden Code bitte:

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

Angenommen, Ihr Server hat alle diese Cookies an einen Benutzer weitergegeben.

Jetzt müssen wir diese Cookies lesen. Nachfolgender Beispiel zeigt Ihnen, wie dies erreicht werden kann (beachten Sie, dass der folgende Code die Verwendung von HasKeys verwendet, um zu überprüfen, ob der Cookie Schlüssel hat):

<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>

Ausgabe:

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

Wie kann man Browser behandeln, die keine Cookies unterstützen?

Wenn Ihre Anwendung mit Browsern umgehen muss, die keine Cookies unterstützen, müssen Sie andere Methoden verwenden, um Informationen zwischen den Seiten Ihrer Anwendung zu übertragen. Es gibt zwei Möglichkeiten:

1. Hinzufügen von Parametern an die URL

Sie können Parameter an die URL hinzufügen:

<a href="welcome.asp?fname=John&lname=Adams">
Gehe zur Begrüßungsseite
</a>

Dann werden diese Werte in einer Datei wie folgt abgerufen, die ähnlich ist wie "welcome.asp":

<%
fname=Request.querystring("fname")
lname=Request.querystring("lname")
response.write("<p>Hello " & fname & " " & lname & "!</p>")
response.write("<p>Willkommen auf meiner Webseite!</p>")
%>

2. Verwendung von Formularen

Sie können auch ein Formular verwenden. Wenn der Benutzer auf die Schaltfläche "Einsenden" klickt, sendet das Formular die von dem Benutzer eingegebenen Daten an "welcome.asp":

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

Dann werden diese Werte im "welcome.asp"-Datei abgerufen, wie folgt:

<%
fname=Request.form("fname")
lname=Request.form("lname")
response.write("<p>Hello " & fname & " " & lname & "!</p>")
response.write("<p>Willkommen auf meiner Webseite!</p>")
%>