ASP oggetto di sessione
oggetto Session è utilizzato per memorizzare le informazioni relative a una sessione utente (sessione), o modificare l'impostazione sessione utente (sessione).
oggetto Session
Quando si utilizza un'applicazione sul computer, si apre, fai alcune modifiche, e quindi chiuderlo. E 'come una conversazione (sessione). Il computer sa chi sei. E 'chiaro che si apre e chiude le applicazioni quando. Tuttavia, su Internet, si pone la questione: non poteva tenere perché l'indirizzo HTTP, il server Web non sa chi sei e quello che hai fatto.
ASP creando un cookie unico per ciascun utente per risolvere questo problema. cookie è trasferito sul computer dell'utente, che contiene informazioni dell'utente identificabili. Questa interfaccia è chiamato l'oggetto Session.
oggetto Session è utilizzato per memorizzare le informazioni relative a una sessione utente (sessione), o modificare l'impostazione sessione utente (sessione).
memorizza variabili informazioni di un singolo utente vengono archiviati nell'oggetto Session, e sono disponibili per applicazioni in tutte le pagine. Memorizzato in una variabile di sessione informazione al pubblico è di solito il nome, l'ID e parametri. Il server crea una nuova sessione per ogni nuovo utente, e di ritirare fuori dell'oggetto Session quando la sessione è scaduto.
Sessione Quando iniziare?
Sessione dalle ore:
- Un nuovo utente richiede un file ASP, ed i riferimenti file Global.asa Session_OnStart subroutine
- Un valore memorizzato nella variabile di sessione
- Un utente richiede un file ASP, e il Global.asa utilizzare tag <object> dal campo di applicazione della sessione creare un'istanza di un oggetto
Sessione finirà?
Se l'utente non richiede o aggiornare la pagina entro il tempo indicato nella domanda, la sessione si concluderà. Il valore di default è di 20 minuti.
Se si desidera impostare l'intervallo di timeout per un breve o più lungo rispetto al valore di default, è possibile utilizzare la proprietàTimeout.
L'esempio seguente imposta un intervallo di timeout di 5 minuti:
Session.Timeout=5
%>
Per terminare la sessione immediatamente, si prega di utilizzare il metodoAbandon:
Session.Abandon
%>
Nota: Quando si utilizza la sessione Il problema principale è che quando finiscono.Non sappiamo più recente richiesta dell'utente è l'ultima richiesta. Pertanto, non sappiamo la sessione make "sopravvivere" a lungo. Per una sessione gratuita di aspettare troppo a lungo sarà a corto di risorse del server. Tuttavia, se la sessione viene rimosso prematuramente, l'utente avrebbe dovuto iniziare più e più volte, questo è perché il server ha cancellato tutte le informazioni. Trovare il giusto intervallo di timeout può essere difficile!
Suggerimento: nella variabile di sessione per memorizzare solo una piccola quantità di dati!
Le variabili di sessione per memorizzare e recuperare
oggetto di sessione è il più grande vantaggio è la variabile in cui memorizzare le pagine successive per leggere, il suo campo di applicazione è molto ampia.
I seguenti esempi della sessione "Paperino" assegnato alla variabile denominatanome utente,e "50" viene assegnato a una variabile denominataetàdi sessione:
Session("username")="Donald Duck"
Session("age")=50
%>
Quando il valore viene memorizzato nella variabile di sessione, può essere applicazioni ASP per utilizzare qualsiasi pagina:
I risultati di sopra di questa linea di restituisce il codice: "Benvenuti Paperino".
È anche possibile memorizzare i parametri utente nell'oggetto di sessione e quindi accedere a questi parametri per determinare ciò che la pagina viene restituito all'utente.
L'esempio che segue prevede che se l'utente utilizza un display a bassa risoluzione, viene restituita la versione solo testo della pagina:
This is the text version of the page
<%Else%>
This is the multimedia version of the page
<%End If%>
Rimuovere variabili di sessione
Contenuto collezione contiene tutte le variabili di sessione.
Le variabili di sessione possono essere rimossi con il metodo Remove.
Nell'esempio che segue, se l ' "età" del valore della variabile di sessione è inferiore a 18, quindi rimuovere la sessione variabile "vendita":
If Session.Contents("age")<18 then
Session.Contents.Remove("sale")
End If
%>
Per rimuovere tutte le variabili di sessione, utilizzare metodi RemoveAll:
Session.Contents.RemoveAll()
%>
raccolta Traversal Sommario
Contenuto collezione contiene tutte le variabili di sessione. È possibile attraversare la collezione Contents, per vedere che memorizza le variabili:
Session("username")="Donald Duck"
Session("age")=50
dim i
For Each i in Session.Contents
Response.Write(i & "<br>")
Next
%>
risultati:
age
Se non si conosce il numero di elementi della collezione Contents, è possibile utilizzare la proprietà Count:
dim i
dim j
j=Session.Contents.Count
Response.Write("Session variables: " & j)
For i=1 to j
Response.Write(Session.Contents(i) & "<br>")
Next
%>
risultati:
Donald Duck
50
raccolta Traversal StaticObjects
È possibile attraversare la raccolta StaticObjects, per vedere i valori di tutti gli oggetti memorizzati nell'oggetto Session:
dim i
For Each i in Session.StaticObjects
Response.Write(i & "<br>")
Next
%>