session获取与存储
来源:互联网 发布:windows phone 应用 编辑:程序博客网 时间:2024/06/16 19:47
方法一:
首先要明白:session是在服务器端创建并保存在服务器端,当代码中创建session时会相应地创建sessionID保存在服务器端,同时服务器向浏览器响应信息时会以cookie形式 (其实就是“JSESSION:sessionID”的键值对)返回并保存到浏览器本地中。一旦当前浏览器的进程要取服务器对应的保存在session的信息时候,就会取出刚才保存在cookie中对应的sessionID和服务器端的sessionID进行对比,相同就能取出你想要的信息,不能就不能取出。
好了,明白这一点后,我们就可以即使浏览器禁止了cookie也能用session。因为在一般情况下(即没禁时候),我们不需把sessionID保存到cookie中,因为一般情况下浏览器会自动的;然而当禁止时候,就需要我们主动的把sessionID写入到cookie中。那么问题就解决了。
主动把sessionID写到cookie中
直接取就可以了:
方法二:
不用保存SessionID到cookie中,而是动态地把当前用户的SessionID添加到程序的各超链接或转发地址中,那么就可以确保用户的唯一。response.encodeRedirectURL(url)是一个进行URL重写的方法, 使用这个方法的作用是为了在原来的url后面追加上Jsessionid 。 目的是保证即使在客户端浏览器禁止了cookie的情况下,服务器端仍然能够对其进行事务跟踪。
例如这样:
功能:物品加入购物车后,点击返回主页面,主页面显示刚才加入到购物车的物品,当然了,这里是考虑浏览器禁止cookie情况下。
阅读全文
0 0
- session获取与存储
- tomcat与redis链接redis存储session
- session与cookie的比较:自定义session存储机制
- Struts2 在action中获取模拟session用于存储数据
- PHP生成验证码+session获取存储验证码
- php 在JS中获取已存储的session值
- struts2获取session与request对象
- struts2获取session与request对象
- ActionContext 与 ServletActionContext获取Session的异同
- 【转载】servlet中创建与获取session
- session存储
- session存储
- IOS与Android的Session的存储区别
- 实现spring Session与redis数据的存储
- Content Provider 存储与获取数据
- Qt之界面数据存储与获取
- SharedPreferences存储图片对象与获取
- Qt之界面数据存储与获取
- Linux上安装dotnetcore2.0
- HTML5 移动端 实现九宫格碰撞
- Missing artifact com.oracle:ojdbc6:jar:11.2.0.4解决方法
- angular4 引入环境变量
- Android开发工具
- session获取与存储
- 从存储、实时、安全的角度谈如何建立完整可用的企业大数据平台
- windows任务计划CMD方式的实现
- 第二周项目一
- 给 Android 开发者的 Gradle 入门指南
- 第十周 项目 1
- JS事件机制:事件绑定、事件监听、事件委托(事件代理)
- 关于HTTP协议,一篇就够了
- iexpress打包ActiveXObject报错