Session的存在价值
http是无状态的协议,客户每次读取web页面时,服务器都打开新的会话,而且服务器也不会自动维护客户的上下文信息,那么要怎么才能实现会话跟踪呢?session就是一种保存上下文信息的机制,它是针对每一个用户的,变量的值保存在服务器端,通过SessionID来区分不同的客户,session是以cookie或URL重写为基础的,默认使用cookie来实现,系统会创造一个名为JSESSIONID的输出返回给客户端Cookie保存。
保存SessionID的方法
既然客户端需要保存session的ID,那么保存的方法不止一种:
- 默认的cookie方法,由cookie保存session的ID。
- 遇到cookie被禁止的情况,第一种方法就不能满足要求了。于是有一种重写URL的方法,就是把session id附加在URL路径的后面,附加的方式也有两种,一种是作为URL路径的附加信息,另一种是作为查询字符串附加在URL后面。网络在整个交互过程中始终保持状态,就必须在每个客户端可能请求的路径后面都包含这个session id。
- 隐藏表单法,没用过,不了解。看意思是说在发表单信息的时候会有一个隐藏表项是Session的ID,但是一直在想,要是这个页面没有表单怎么破。
基本就是这样,CHP的意思是让使用默认的第一种,会简单一些。但是还是不会