文档章节

cookie和session的跟踪过程

 小南风
发布于 2016/08/12 10:05
字数 210
阅读 4
收藏 0

结论:   浏览器一开始发送cookie到服务器器, 如下:

如果有JSESSIONID 则获取session服务,否则新建一个session服务!并且通知浏览器保存

如下图

 

代码:

<%@ page language="java" contentType="text/html;"  pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>Insert title here</title>
</head>
<body>
  hell12233你好--d
  
  <%   
  Cookie cookie1 = new Cookie("ddd","2334"); // 新建Cookie
  cookie1.setMaxAge(5); // 设置生命周期为MAX_VALUE
  response.addCookie(cookie1); // 输出到客户端
	
 	 Cookie cookie2 = new Cookie("fff","jjd222");
  	//cookie2.setMaxAge(1000);  //不设置 浏览器 失效 
	 response.addCookie(cookie2);
     
 
  Cookie[] cookies = request.getCookies();//这样便可以获取一个cookie数组
  String strCks="";
   if(cookies!=null){
	  for(Cookie cookie : cookies){
		  strCks=strCks+cookie.getName() +"::";// get the cookie name
		  strCks=strCks+cookie.getValue()+"--"; // get the cookie value
		}
   }
   HttpSession si= request.getSession();
   if(si==null){
	   out.print("<br>si是空值<br>");
   }
  %>
  <br> session  :  <%= si%>
  <br> session_id: <%= request.getSession().getId() %>
  <br> strCks=  <%=strCks %>
</body>
</html>

调试结果:

 

© 著作权归作者所有

共有 人打赏支持
粉丝 4
博文 162
码字总数 59007
作品 0
session依赖于cookie

看下session存储的执行过程: 当用户请求servlet,servlet会首先查看客户端cookie中是否有sessionID,如果有则证明是旧的会话, 那么就通过cookie将sessionID发送到服务器,服务器就会根据s...

土鳖的弟弟
2014/04/07
0
0
ovirt session 机制分析

本文分析了rhev的 ovirt虚拟化管理平台的登录机制 ,如何 通过 session 实现跟踪会话,超时登出等功能。 session与cookie 链接:https://www.zhihu.com/question/19786827/answer/28752144 1...

ovirtKg
2016/12/22
28
0
Servlet - 会话跟踪

标签 : Java与Web 会话跟踪 HTTP本身是“无状态”协议,它不保存连接交互信息,一次响应完成之后即连接断开,下一次请求需要重新建立连接,服务器不记录上次连接的内容.因此如果判断两次连接是否...

hanqing280441589
2016/05/03
0
0
php中Session使用方法详解

php中Session使用方法详解 Session的声明与使用 Session的设置不同于Cookie,必须先启动,在PHP中必须调用sessionstart()。sessionstart()函数的语法格式如下: Bool session_start(void) /...

优惠券活动
05/08
0
0
cookie和session原理

会话(Session)跟踪是Web程序中常用的技术,用来跟踪用户的整个会话。常用的会话跟踪技术是Cookie与Session。Cookie通过在客户端记录信息确定用户身份,Session通过服务器端记录信息确定用户...

stone_
2016/05/13
142
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

文件的压缩与解压(linux)

Linux下*.tar.gz文件解压缩命令 1.压缩命令:   命令格式:tar -zcvf 压缩后文件名.tar.gz 被压缩文件名 可先切换到当前目录下。压缩文件名和被压缩文件名都可加入路径。 2.解压缩命令: ...

qimh
37分钟前
3
0
invalid character found in the request target 异常

这个异常时因为Tomcat 9不支持请求格式出现“{”等非法字符的问题 因为tomcat版本问题遇到的坑,记录一下。 问题 今天由于要测试一下订单详情页的异步查询,在本地起了一个服务,发送的请求是...

edwardGe
42分钟前
4
0
发现抓包软件fiddler的bug

1个请求他跳转之后,直接400,被拦在了Apache,使用fiddler 的,replay requests 是同样的结果,但是replay composer确是正常的。 也就是说这replay requests 是发原来的包,replay composer...

NLGBZJ
52分钟前
1
0
linux screen 命令详解

shell关闭后, 主机仍然运行 screen命令 启动jenkins以后, screen, 然后按ctrl+a 再按d 这样暂停了子界面, 这时候回到了父界面 用screen –ls查看目前子界面的状态 [root@free /]# screen -l...

SuShine
53分钟前
4
0
mac机器切换无线网络导致网页不能打开的问题

问题: 公司和家里使用不同的WI-FI,每次从家到公司时自动切换网络后,公司的许多地址不能访问, ping域名是可以ping同的,但是网页却打不开... 问题分析: 初步猜想是DNS缓存的问题? 对于MAC系统没...

Lennie002
55分钟前
2
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部