Home Content Search

Session

Back Up Next

 

Application
Session
Server
Request
Response

Один из самых полезных объектов. Суть его заключается в том, что можно передавать информацию между страницами сайта по аналогии с COMMON-блоками в Фортране или переменными типа External. Если на одной из страниц сайта вы зададите следующую строку

<% Session("MyName") = "Вася" %>

то на любой другой странице можно эту переменную использовать в таком, например, виде:

<p>Меня зовут <%= Session("MyName") %></p>

Объект Session автоматически создаётся сервером при первом посещении браузером любой страницы сайта. Физически сервер передаёт браузеру некий cookie, который является уникальным идентификатором данной сессии. При каждом последующем обращении к страницам сайта сервер проверяет наличие этого cookie. Его отсутствие сигнализирует серверу о том, что необходимо завести новую сессию для данного клиента и, может быть, обработать соответствующую команду Session_OnStart, которую можно описать в файле GLOBAL.ASA. После этого можно, не закрывая браузер, "погулять" по Интернету и вернуться обратно на данный сайт. Если вы не слишком долго отсутствовали, текущая сессия и все записанные в нее переменные будут все еще доступны. При закрытии сессии сервер обрабатывает событие Session_OnEnd.

Понятно, что работать с сессиями может   только браузер, поддерживающий возможность приема и передачи cookie.

Каждый cookie имеет некоторое ограниченное время жизни, и сессия в этом смысле не является исключением. Поэтому нужно помнить, что если вы отсутствовали более некоторого времени, называемого Session Timeout, то ваша сессия будет потеряна.

Объектом Session можно управлять, используя следующие его свойства и методы:

Коллекции

Contents Набор переменных типа Session, добавленных с помощью команды Session("...") = ...
StaticObjects Набор объектов, созданных с помощью тега <OBJECT>

Свойства

CodePage Кодовая страница, например, 1251
SessionID Уникальный идентификатор сессии. Не рекомендуется использовать в качестве действительно уникального значения (например, запоминать его в базе данных в качестве уникального поля), поскольку после перезагрузки сервера старые значения идентификаторов забываются и могут случайно повториться
Timeout Время жизни сессии (в минутах). По умолчанию на нашем сервере используется значение 20, что, впрочем, не является правилом и в любой момент может быть изменено администратором в ту или иную сторону в зависимости от загруженности сервера

Методы

Abandon Стирает всю информацию, сохранённую в сессии и очищает отведённую под нее память. Этот метод вызывается автоматически по истечении срока жизни (Session Timeout) или при закрытии сессии
 

 

Back Up Next

FrontPage'98
Последнее обновление - 07 июня 2004
Internet Explorer 4.01