Web应用中session的实现机制
本文简单介绍一下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参数。
>更多相关文章
首页推荐
佛山市东联科技有限公司一直秉承“一切以用户价值为依归
- 01-11全球最受赞誉公司揭晓:苹果连续九年第一
- 12-09罗伯特·莫里斯:让黑客真正变黑
- 12-09谁闯入了中国网络?揭秘美国绝密黑客小组TA
- 12-09警示:iOS6 惊现“闪退”BUG
- 12-25优酷推出U镜到底等直播功能 已应用在羽毛球
- 12-25百川智能正式发布全链路领域增强大模型
- 12-25SHEIN4家仓储物流园获“零废工厂”认证
- 12-25西方博主在TikTok上展现中国风貌,“China
- 12-05亚马逊推出新一代基础模型 任意模态生成大模
相关文章
24小时热门资讯
24小时回复排行
热门推荐
最新资讯
操作系统
黑客防御