首页 > 代码库 > 页面内嵌iframe 防止session过期
页面内嵌iframe 防止session过期
If you are trying to stop the session from timeing out all the time you can do this rather than increasing the session timeout.
KeepAlive.aspx
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="KeepAlive.aspx.cs" Inherits="Pages.KeepAlive" %><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><%@ OutputCache Location="None" VaryByParam="None" %><html xmlns="http://www.w3.org/1999/xhtml"><head runat="server"> <title></title></head><body> <form id="form1" runat="server"> <div> KEEP ALIVE </div> </form></body></html>
Keep Alive.aspx.cs
using System;using System.Collections.Generic;using System.Linq;using System.Web;using System.Web.UI;using System.Web.UI.WebControls;namespace Pages{ /// <summary> /// Page to keep the session alive /// </summary> public partial class KeepAlive : System.Web.UI.Page { //- EVENTS ------------------------------------------------------------------------------------------------------------------ #region Events /// <summary> /// Page Load /// </summary> /// <param name="sender">object</param> /// <param name="e">args</param> protected void Page_Load(object sender, EventArgs e) { try { //Add refresh header to refresh the page 60 seconds before session timeout Response.AddHeader("Refresh", Convert.ToString((Session.Timeout * 60) - 60)); } catch (Exception) { throw; } } #endregion Events //--------------------------------------------------------------------------------------------------------------------------- }}
Then in your master page create an iFrame that refreshes to keep the session alive
<iframe id="Defib" src="KeepAlive.aspx" frameborder="0" width="0" height="0" runat="server"></iframe>
页面内嵌iframe 防止session过期
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。