首页 > 范文大全 > 正文

基于Asp.Net的Web注销功能的实现

开篇:润墨网以专业的文秘视角,为您筛选了一篇基于Asp.Net的Web注销功能的实现范文,如需获取更多写作素材,在线客服老师一对一协助。欢迎您的阅读与分享!

[摘 要]web应用中操作用户的信息和操作过程中的数据经常会存放在Session中,Session信息可提高程序的运行效率和灵活性。但是Session信息在用户不使用时会在一定的时间内驻留在服务器上,不仅会造成Web服务器资源浪费,而且更为严重的会使用户信息泄露。因此当用户退出应用系统时,及时清理不用的Session信息意义就很大了。本文使用ASP.省略环境下对任意操作下的注销技术进行探讨。

二、注销功能的实现

Default.aspx页面验证用户身份成功后,会进入程序的主页面main.htm。Main.htm是一个框架,包含三个框架。上面框架是提示信息页main_top.aspx,包含登陆的用户姓名,单位题头,当前服务器的日期和关闭程序的HTM的按钮。main_top.aspx的HTML代码中部分添加一个JAVASCRIPT的代码:

function __toTop()

{ window.parent.window.close ();}

main_top.aspx的父窗口是main.htm,代码window.parent.window.close ()引发main.htm的window.onunload事件,window.onunload事件又会引发window.onbeforeunload事件,因此在

main.htm的头文件中添加javascript代码:

window.onunload = function()

{ var http = new ActiveXObject("MSXML2.XMLHTTP");

http.open("get", "Logout.aspx");

http.send();}}

window.onbeforeunload = function()

{ event.returnValue = "关闭窗口同时将注销系统。"; }

XmlHttp是一套可以在脚本语言中通过http协议传送或从接收XML及其他数据的一套API。XmlHttp最大的用处是可以更新网页的部分内容而不需要刷新整个页面。XmlHttp提供客户端同http服务器通讯的协议。客户端可以通过XmlHttp对象(MSXML2.XMLHTTP.3.0)向http服务器发送请求并使用微软XML文档对象模型处理回应[3]。多数浏览器都增加了对XmlHttp的支持,IE中使用ActiveXObject方式创建XmlHttp对象,其他浏览器如:Firefox、Opera等通过window.XMLHttpRequest来创建xmlhttp对象。 main.htm在关闭之前执行Logout.aspx页面,该页面专门负责注销功能,页面上只有一个LinkButton控件,在Page_Load事件中,添加如下代码:

LinkButton1_Click(sender,e);

在LinkButton控件的Click事件中添加清除Session信息的代码,如:

Session.Remove ("userid");

Session.Remove ("username");

Session.Remove ("rolesetup");

经过以上的处理,当用户关闭窗口或转向其它地址时,会弹出窗口

“确定”会退出程序并清除Session信息。

三、总结

在大型的Web应用中,数据的并发访问量很大,Web服务器负荷较重,及时释放不必要的资源,对应用程序和Web服务器的稳定性、可靠性和运行效率都有重要的意义。Session作为客户端与服务器的通信会话占用Web服务器消耗较多,因此释放Session中的临时交换数据,可有效地提高服务器端的资源利用率,同时及时清除Session中的用户信息,可避免黑客攻击,保护用户数据的安全,维护了用户自身利益。

参考文献:

[1] 王国荣.Active Server Page & WEB数据库[M].人民邮电出版社,2000。

[2] MSDN Library Visual C#文档. www.省略/china/MSDN/library/Mobility/default.mspx,2004。

[3]刘前进,王蒙,张宏林. Delphi数据库编程技术[M].人民邮电出版社,1999。

[4]王忠华,魏志强.高级编程篇程序设计Delphi5.0[M].中国铁道出版社,2000。

[5]桂思强.省略与数据库程序设计[M].中国铁道出版社,2002。