Session Object
Author: Sage of the Rice Fairy
We can use the session object to store the information that is required for a particular user conversation. When a user jumps between pages of an application, the variables stored in the Session object are not purged, and the variables always exist when the user accesses the page in the application. When a user requests a Web page from an application, the Web server automatically creates a Session object if the user does not have a conversation. When a session expires or is discarded, the server terminates the session.
You can manage the session object on the server by sending a unique Cookie to the client program. When a user requests a page in an ASP application for the first time, the ASP checks the HTTP header information to see if a Cookie named ASPSessionID in the message is sent, and if so, the server starts a new session and generates a globally unique value for the session. This value is sent to the client as the value of the new ASPSessionID cookie, which is used to access information that is stored on the server that is part of the client program. The most common function of the session object is to store user preferences. For example, if a user indicates that they don't like to view a graphic, they can store that information in the session object. In addition, it is often used in the process of identifying customer identities. Note that session state is reserved only in browsers that support cookies, and sessions will not work if the customer turns off the cookie option.
One, property
1, SessionID
The SessionID property returns the user's session identity. When you create a session, the server generates a separate identity for each session. The session identity is returned with a long shaping data type. In many cases SessionID can be used for WEB page registration statistics.
2, TimeOut
The Timeout property specifies the time-out period for the session object of the application in minutes. If the user does not refresh or request a Web page within the time-out period, the session terminates.
Second, the method
The session object has only one method, that is, the Abandon,abandon method deletes all objects stored in the session object and releases the source of those objects. If you do not explicitly call the Abandon method, the server deletes these objects once the session times out. The following example releases session state when the server finishes processing the current page.
<% Session.Abandon%>
III. Events
The session object has two events that can be used to start and release the session object when it is running.
1, the Session_OnStart event occurs when a new session is created by the server. The server processes the requested page before it is executed. The Session_OnStart event is the best time to set session variables, because they are set before any pages are accessed.
Although the session object persists when the Session_OnStart event contains a Redirect or End method call, the server stops processing the Global.asa file and triggers the script in the file of the Session_OnStart event.
To ensure that a user always starts a session when a particular Web page is opened, the Redirect method can be invoked in the Session_OnStart event. When the user enters the application, the server creates a session for the user and processes the Session_OnStart event script. You can include a script in an event to check that the user opens a page that is not a startup page, and if not, instruct the user to invoke the Response.Redirect method to start the Web page.
2. The Session_OnEnd event was discarded or timed out during the session. Things to note about using Session Objects application objects are similar.
Sessions can be started in the following three ways:
1. A new user requests access to a URL that identifies an. asp file in an application, and the application's Global.asa file contains the Session_OnStart process.
2, the user stores a value in the Session object.
3. The user requests an application's. asp file, and the application's Global.asa file uses the < object> tag to create an instance of the object with the session scope.
If a user does not request or refresh any page in the application within a specified time, the session ends automatically. The default value for this period is 20 minutes. You can change the default time-out limit settings for an application by setting the session Timeout property in the Application Options property page in Internet Services Manager. Set this value based on the requirements of your WEB application and the memory space of the server. For example, if you want users browsing your WEB application to stay only a few minutes per page, you should shorten the default timeout for the session. An overly long session timeout value will cause an open session to run out of memory resources for your server. For a specific session, if you want to set a time-out value that is less than the default time-out, you can set the Timeout property of the Sessions object. For example, the following script sets the timeout value to 10 minutes.
<% Session.Timeout =%>
Of course, you can also set a time-out value that is greater than the default setting, and the Session.Timeout property determines the timeout. You can also explicitly end a session by using the Abandon method of the Sessions object. For example, an Exit button is provided in the table, and the ACTION parameter of the button is set to the URL of the. asp file that contains the following commands.
<% Session.Abandon%>