Recomendado: Interpretación de cómo usar correctamente las variables de objeto de sesión en ASP Cualquiera que use ASP sabe que un objeto de sesión almacena la información necesaria para una sesión de usuario específica, y cuando un usuario salta entre páginas de la aplicación, las variables almacenadas en el objeto de sesión no están bordeadas, y estas variables siempre están presentes cuando el usuario accede a la página en la aplicación. Puede reducir la complejidad del programa y mejorar la eficiencia de la programación, pero también tiene muchas deficiencias.
1. Atributos1. SessionID
La propiedad SessionID devuelve la identidad de la sesión del usuario. Al crear una sesión, el servidor genera una identidad separada para cada sesión. El identificador de la sesión se devuelve como el tipo de datos alargado. En muchos casos, SessionID se puede utilizar para estadísticas de registro de la página web.
2. Tiempo de espera
La propiedad de tiempo de espera especifica un límite de tiempo de tiempo de espera para el objeto de sesión de la aplicación en minutos. Si el usuario no actualiza ni solicita una página web dentro de este período de tiempo de espera, la sesión finalizará.
2. Método
Solo hay un método para objetos de sesión, que es abandonado. El método de abandono elimina todos los objetos almacenados en los objetos de sesión y libera la fuente de estos objetos. Si no llama explícitamente el método de abandono, el servidor eliminará estos objetos una vez que la sesión se agotara. Cuando el servidor ha terminado de procesar la página actual, el siguiente ejemplo libera el estado de la sesión.
<%Session.abandon%>
Iii. Eventos
El objeto de sesión tiene dos eventos que se pueden usar cuando se inicia el objeto de sesión y se lanza.
1. El evento Session_onStart ocurre cuando el servidor crea una nueva sesión. El servidor procesa el script antes de ejecutar la página solicitada. El evento Session_OnStart es el mejor momento para establecer variables de sesión, porque se establecen antes de acceder a cualquier página.
Aunque el objeto de sesión permanece cuando el evento Session_onStart contiene llamadas de método de redirección o finalización, el servidor dejará de procesar el archivo global.asa y activará el script en el archivo que desencadena el evento Session_onStart.
Para asegurarse de que el usuario siempre inicie una sesión al abrir una página web específica, se puede llamar al método de redirección en el evento Session_onStart. Cuando el usuario ingresa a la aplicación, el servidor crea una sesión para el usuario y procesa el script de evento session_onstart. Puede incluir el script en este evento para verificar si la página abierta por el usuario es una página de inicio y, si no, instruya al usuario que llame al método respuesta. Redirect para iniciar la página web. El procedimiento es el siguiente:
<Scriptrunat = serverlanguage = vBscript>
Subsession_onstart
startpage =/myapp/starthere.asp
currentPage = request.ServerVariAbles (script_name)
ifstrcomp (currentPage, startPage, 1) entonces
Respuesta.Redirect (Page de inicio)
endif
Endsub
</script>
Los programas anteriores solo pueden ejecutarse en navegadores que admiten cookies. Debido a que los navegadores que no admiten cookies no pueden devolver SessionIDCookies, el servidor crea una nueva sesión cada vez que un usuario solicita una página web. De esta manera, para cada servidor solicitante, se procesará el script session_onstart y el usuario se redirigirá a la página de inicio.
2. El evento Session_onend ocurre cuando la sesión se abandona o se agota.
Con respecto a los asuntos que deben prestarse la atención al usar objetos de sesión, consulte el artículo anterior.
La sesión se puede iniciar de las siguientes tres maneras:
1. Un nuevo usuario solicita acceso a una URL que identifica el archivo .asp en una aplicación, y el archivo global.asa de la aplicación contiene el proceso session_onstart.
2. El usuario almacena un valor en el objeto de sesión.
3. El usuario solicitó el archivo .asp de la aplicación, y el archivo global.asa de la aplicación utiliza la etiqueta <S Object> para crear una instancia de un objeto con un alcance de sesión.
Si el usuario no solicita ni actualiza ninguna página en la aplicación dentro del tiempo especificado, la sesión finalizará automáticamente. El valor predeterminado para este período es de 20 minutos. La configuración de límite de tiempo de espera predeterminada para una aplicación se puede cambiar configurando la propiedad de tiempo de espera de sesión en la página de propiedades de opciones de solicitud en el administrador de servicios de Internet. Este valor debe establecerse de acuerdo con los requisitos de su aplicación web y el espacio de memoria del servidor. Por ejemplo, si desea que los usuarios que navegen por su aplicación web permanezcan en cada página por solo unos minutos, debe acortar el valor de tiempo de espera predeterminado para su sesión. Un valor de tiempo de espera de sesión demasiado largo causará demasiadas sesiones abiertas y agotará los recursos de memoria de su servidor. Para una sesión específica, si desea establecer un valor de tiempo de espera que sea menor que el valor de tiempo de espera predeterminado, puede establecer la propiedad de tiempo de espera del objeto de sesión. Por ejemplo, el siguiente script establece el valor de tiempo de espera en 5 minutos.
<%Session.timeout = 5%>
Por supuesto, también puede establecer un valor de tiempo de espera mayor que la configuración predeterminada. La propiedad Session.TimeOut determina el valor de tiempo de espera. También puede finalizar explícitamente una sesión a través del método de abandono del objeto de sesión. Por ejemplo, proporcione un botón de salida en la tabla, configurando el parámetro de acción del botón en la URL del archivo .asp que contiene los siguientes comandos.
<%Session.abandon%>
Compartir: Cómo ASP evita que las presentaciones repetidas de formularios Los usuarios a menudo encuentran algunas situaciones inesperadas al enviar formularios, como refrescar la página varias veces, presionar la tecla Atrás, etc. Si no se toman medidas de control, causará el problema de la presentación repetida del formulario. El método de prevención introducido en este artículo está compuesto principalmente por cuatro subrutinas. En aplicaciones relativamente simples, solo necesita colocar estos códigos en el archivo incluido y hacer referencia directamente a ellos; para aquellos