Heim  >  Artikel  >  Backend-Entwicklung  >  Detaillierte Einführung in die Sitzung in ASP

Detaillierte Einführung in die Sitzung in ASP

Y2J
Y2JOriginal
2017-05-18 11:42:212068Durchsuche

Sitzungsobjekt wird zum Speichern von Benutzerinformationen verwendet. Im Sitzungsobjekt gespeicherte Variablen enthalten Informationen über einen einzelnen Benutzer und stehen allen Seiten in einer Anwendung zur Verfügung.

Sitzungsobjekt

Wenn Sie an einer Anwendung arbeiten, öffnen Sie sie, nehmen Änderungen vor und schließen sie dann. Es ähnelt stark einem Gespräch. Der Computer weiß, wer Sie sind. Es weiß, wann Sie Apps öffnen und schließen. Im Internet gibt es jedoch ein Problem: Da HTTP-Adressen den Status nicht beibehalten können, weiß der Webserver nicht, wer Sie sind oder was Sie tun.

ASP löst dieses Problem, indem es für jeden Benutzer ein einzigartiges Cookie erstellt. Das Cookie wird an den Client übertragen und enthält Informationen, die den Benutzer identifizieren. Diese Schnittstelle wird als Sitzungsobjekt bezeichnet.

Sitzungsobjekte werden verwendet, um Informationen über den Benutzer zu speichern oder um Einstellungen für die Sitzung eines Benutzers zu ändern. Im Sitzungsobjekt gespeicherte Variablen enthalten Informationen über einen einzelnen Benutzer und stehen allen Seiten in der Anwendung zur Verfügung. Die im Sitzungsobjekt gespeicherten Informationen sind normalerweise Name, ID und Parameter. Der Server erstellt für jeden neuen Benutzer eine neue Sitzung und widerruft das Sitzungsobjekt, wenn die Sitzung abläuft.

Wann beginnt die Sitzung?

Sitzung beginnt um:

*Wenn ein neuer Benutzer eine ASP-Datei anfordert und die Global.asa-Datei auf die Unterroutine Session_OnStart verweist; > *Wenn ein Wert in der Sitzungsvariablen gespeichert ist; *Wenn ein Benutzer eine ASP-Datei anfordert und Global.asa das Tag 273238ce9338fbb04bee6997e5552b95 verwendet 🎜>

Wann endet die Sitzung?

Wenn der Benutzer die Seite in der Anwendung nicht innerhalb der angegebenen Zeit anfordert oder aktualisiert, wird die Sitzung beendet. Der Standardwert beträgt 20 Minuten.

Wenn Sie das Timeout-Intervall länger oder kürzer festlegen möchten, können Sie das Timeout-Attribut

festlegen.

Das folgende Beispiel legt ein Timeout-Intervall von 5 Minuten fest:

Um die Sitzung sofort zu beenden, verwenden Sie die Abandon-Methode:

<%
Session.Timeout=5
%>

Hinweis

<%
Session.Abandon
%>
: Das Hauptproblem bei der Verwendung von Sitzungen ist, wann sie enden sollen. Wir wissen nicht, ob die letzte Anfrage des Benutzers die letzte Anfrage war. Wir wissen also nicht, wie lange wir die Sitzung „leben“ lassen sollen. Zu langes Warten auf eine inaktive Sitzung kann die Serverressourcen erschöpfen. Wenn die Sitzung jedoch vorzeitig

gelöscht wird, muss der Benutzer immer wieder von vorne beginnen, da der Server alle Informationen gelöscht hat. Es kann schwierig sein, das richtige Timeout-Intervall zu finden. Tipp

: Wenn Sie Sitzungsvariablen verwenden, speichern Sie keine großen Datenmengen darin.

Sitzungsvariablen speichern und abrufen

Der größte Vorteil des Sitzungsobjekts besteht darin, dass darin Variablen zum späteren Lesen von Webseiten gespeichert werden können und sein Anwendungsbereich sehr groß ist breit von.

Das folgende Beispiel weist „Donald Duck“ der Sitzungsvariablen namens Benutzername zu und weist „50“ der Sitzungsvariablen namens Alter zu:

Sobald die Werte gespeichert sind, geben Sie ein die Sitzungsvariable und kann von jeder Seite in der ASP-Anwendung verwendet werden:

Willkommen 9191e841d6c4ef7e6a651b7bd17ba29e

<%
Session("username")="Donald Duck"
Session("age")=50
%>

Die Das von der obigen Programmzeile zurückgegebene Ergebnis ist: „Willkommen, Donald Duck“.

Sie können Benutzerparameter auch im Sitzungsobjekt speichern und dann entscheiden, welche Seite an den Benutzer zurückgegeben werden soll, indem Sie auf diese Parameter zugreifen.

Das folgende Beispiel gibt an, dass, wenn der Benutzer eine niedrige Monitorauflösung verwendet, eine Nur-Text-Version der Seite zurückgegeben wird:

<%If Session("screenres")="low" Then%> 
  This is the text version of the page
<%Else%> 
  This is the multimedia version of the page
<%End If%>

移除 session 变量

contents 集合包含所有的 session 变量。

可通过 remove 方法来移除 session 变量。

在下面的例子中,假如 session 变量 "age" 的值小于 18,则移除 session 变量 "sale":

<%
If Session.Contents("age")<18 then   Session.Contents.Remove("sale")End If 
%>

如需移除 session 中的所有变量,请使用 RemoveAll 方法:

<%
Session.Contents.RemoveAll()
%>

遍历 contents 集合

contents 集合包含所有的 session 变量。可通过遍历 contents 集合,来查看其中存储的变量:

<%
Session("username")="Donald Duck"
Session("age")=50
dim i
For Each i in Session.Contents
  Response.Write(i & "<br />")
Next
%>

结果:

username
age

如果需要了解 contents 集合中的项目数量,可使用 count 属性:

<%
dim i
dim j
j=Session.Contents.CountResponse.Write("Session variables: " & j)
For i=1 to j
  Response.Write(Session.Contents(i) & "<br />")
Next
%>

结果:

Session variables: 2
Donald Duck
50

遍历 StaticObjects 集合

可通过循环 StaticObjects 集合,来查看存储在 session 对象中所有对象的值:

<%
dim i
For Each i in Session.StaticObjects
  Response.Write(i & "<br />")
Next
%>

【相关推荐】

1.  ASP免费视频教程

2. 教你解决ASP session丢失的方法

3. 介绍ASP中Session对象的三种方法

4. 详解ASP中Session的使用技巧

5. ASP session简单示例

Das obige ist der detaillierte Inhalt vonDetaillierte Einführung in die Sitzung in ASP. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn