写程序的很多人都知道的,Session是服务器端的东西而Cooike是客户端的东西。因为B/S模式是无状态模式,它们的应用都是要存储客户端的某些登录或是加密的信息。
Session存在于服务器端,当然要占用一些服务器资源,当有户数量过多时,不可避免的影响服务器运行速度与资源。而Cookie存在在客户端不占用服务器资源,当用户浏览时,系统读取Cookie中的信息,进行匹配,这样又降低的安全性。
Session的失效期太短,Asp.net中默认的是20分钟吧,而Cookie可以自定义时间,从1分钟到1天,1年不等。
设置Session失效的方法。可以设置Session失效时间长一些,不过我没有实验成功。另外还可以设置Session至 。这个我不理解,好端端的Session怎么又跟 SQL Server扯上关系了。在网上搜过了用刷新,定时刷新页面的方法可以令Session不失效.在Head中加入meta
<meta http-equiv="refresh" content="600"/> 这个是10分钟刷新一次
产生的新问题是。我用一个用户需要输入信息的表单,如果这样刷新的话,当用户输入一半信息时,刷新了,输入的信息也就没有了。当然这种方法就不适合了.
如果安全性能要求不高的情况之下可以用cookie。
在所有的应用程序用到Sessin或是Cookie时,一定要判断Session或是Cookie是否为空。如果为空的话,则要进行跳转。提示用户,重新登录或是输入重要信息。
推荐: