我需要会话变量,即使在浏览器关闭或系统关闭后也必须存在。 但是在我的页面中,它不支持浏览器之间的会话范围,当我使用Chrome浏览器登录登录页面时,我首先使用firefox登录。为什么会这样。请任何人帮我解决这个问题。
谢谢和问候, Alagar Pandi.P alagar.pandi@gmail.com
答案 0 :(得分:2)
浏览器之间的会话范围是不可能的。会话由令牌标识,必须首先将其提供给用户,然后由浏览器以某种形式传回。通常,这是通过cookie完成的,但也可以通过在访问者浏览网站时将令牌附加到URL来完成。
由于Web浏览器是使用自己的cookie处理方法的独立软件,因此您无法在浏览器之间共享Cookie,因此您无法共享基于cookie的会话。可以将包含会话令牌的网站中的URL复制并粘贴到另一个浏览器中并在那里继续会话,但大多数站点都使用cookie,因此通常不可能这样做,而且它肯定无法实现你想做什么。
您提出的要求通常被认为是不可能的,但通常也不是问题。从好的方面来说,它也是大多数用户普遍理解的过程。用户不希望使用一个浏览器登录到站点,然后启动另一个浏览器并仍然登录。
答案 1 :(得分:0)
浏览器与之间的会话到期 浏览器或系统关闭后?
浏览器关闭或系统关闭后都没有
会话在服务器端获取超时时过期,并且它取决于每个Web服务器设置,例如,在20分钟之后。
答案 2 :(得分:0)
Cookie是跟踪用户的唯一方式。它们可以是持久的,也可以不是。如果cookie是持久性的,它将作为文件存储在用户的计算机中,并且具有过期日期,但只有创建它的浏览器才能再次访问它。没有办法实现跨浏览器的cookie。
答案 3 :(得分:0)
然后你应该使用。客户端cookie而不是会话变量。
会话仅在浏览器关闭或系统关闭之前存在。
如果您仍想继续使用会话变量,则将会话值存储在数据库中,每当登录页面加载时检查数据库是否用户未手动注销,如果是,则显示主页面,否则显示hime登录页面。