Web应用中session的实现机制
来源:互联网 发布:赛迪智库待遇知乎 编辑:程序博客网 时间:2024/05/23 15:06
本文简单介绍一下session的实现机制,示例的片段代码为java环境。
在客服端浏览器第一次访问一个URL的时候,服务器在返回的
httpresponse header中会带上如下参数告诉浏览器将session的id号作为
cookie保存。如下:
Set-Cookie:JSESSIONID=98BF5B4E64D1EEFD7477A9544A695336; Path=/prjWeb
浏览器再次访问该URL的时候会在httprequest header中的cookie中带上这个
session id,服务器从request header中读取cookie从而达到session的识别。
示例如下:
Cookie:JSESSIONID=98BF5B4E64D1EEFD7477A9544A695336; .......
这是在浏览器支持cookie的时候的工作机制,这些由浏览器和web服务器自动完成。
如果浏览器禁用了cookie的时候,就需要通过编程来保证session id在浏览器和客户端
进行传递。
比如构造一个超链接的时候:服务器端代码将session id作为超链接参数的一部分。
String url = response.encodeURL("/prjWeb/x.req");
PrintWriter pw = response.getWriter();
pw.println("Sample encoded URL --><a href='" + url + "'>purchase</a>" );
传到浏览器的内容会带上session id
<a href='/prjWeb/x.req;jsessionid=1F5DAB0A983ACEDBFC31754E2225119C'>purchase</a>
response.encodeURL在客户端浏览器支持cookie的时候不会输出session id。
应该是encodeURL中通过判断客户端请求头是否带有cookie并且有session id来实现的。
另外,当浏览器禁用cookie后,每次response的header都会有Set-Cookie参数。
在客服端浏览器第一次访问一个URL的时候,服务器在返回的
httpresponse header中会带上如下参数告诉浏览器将session的id号作为
cookie保存。如下:
Set-Cookie:JSESSIONID=98BF5B4E64D1EEFD7477A9544A695336; Path=/prjWeb
浏览器再次访问该URL的时候会在httprequest header中的cookie中带上这个
session id,服务器从request header中读取cookie从而达到session的识别。
示例如下:
Cookie:JSESSIONID=98BF5B4E64D1EEFD7477A9544A695336; .......
这是在浏览器支持cookie的时候的工作机制,这些由浏览器和web服务器自动完成。
如果浏览器禁用了cookie的时候,就需要通过编程来保证session id在浏览器和客户端
进行传递。
比如构造一个超链接的时候:服务器端代码将session id作为超链接参数的一部分。
String url = response.encodeURL("/prjWeb/x.req");
PrintWriter pw = response.getWriter();
pw.println("Sample encoded URL --><a href='" + url + "'>purchase</a>" );
传到浏览器的内容会带上session id
<a href='/prjWeb/x.req;jsessionid=1F5DAB0A983ACEDBFC31754E2225119C'>purchase</a>
response.encodeURL在客户端浏览器支持cookie的时候不会输出session id。
应该是encodeURL中通过判断客户端请求头是否带有cookie并且有session id来实现的。
另外,当浏览器禁用cookie后,每次response的header都会有Set-Cookie参数。
- Web应用中session的实现机制
- session机制在web应用
- 分布式web应用session机制研究
- 黑马程序员_Java Web 中Session机制的学习
- session机制及session的应用
- WEB应用的Session冲突
- Web应用中Cookie和Session的原理以及Session持久化
- Web应用中并发控制的实现
- Web应用中并发控制的实现
- Web应用中并发控制的实现
- Web应用中并发控制的实现
- Struts2中实现web应用的初始化
- 应用Druid进行数据源、SQL、Web应用、URI、Session等监控的简单实现
- Magento session机制的分析与应用
- Magento session机制的分析与应用
- session机制详解以及session的相关应用
- session机制详解以及session的相关应用
- session机制详解以及session的相关应用
- Java 二维数组
- 黑马程序员----JAVASE高级部分之JavaBean与内省
- IO流读写文件
- Activiti5完整版视频教程下载
- Debug清除BIOS密码的命令
- Web应用中session的实现机制
- 解决IE的url过长问题
- Adobe AIR for Android 中的GPU 渲染 [译]
- jena 简单查询(不带推理,直接读取owl文件)
- 2013.11.28 Base64编码后的图片信息在JSP页面中的显示[JFinal框架项目]
- TCP/IP Network Layer Protocols
- nyoj-871-比赛
- ssh常用用法小结
- linux 下iptables 执行清除命令 iptables -F 要非常小心