cookie和session

HTTP协议本身是无状态的, 客户端每次打开一个Web页面,它就会与服务器建立一个新的连接,发送一个新的请求。服务器处理客户端的请求,将响应返回到客户端,并关闭与客户端建立的连接。但是对许多Web应用而言,服务器往往需要记录特定客户端与服务器之间的一系列请求的特定信息。这一些列请求被称作会话,记录会话信息的技术成为会话跟踪。

常见的会话跟踪技术有Cookie、URL重写、隐藏表单域、Session

如果客户端请求不包含session id,则为此客户端创建一个session并且生成一个与此session相关联的session id,session id的值应该是一个既不会重复,又不容易被找到规律以仿造的字符串,这个session id将被在本次响应中返回给客户端保存。

image.png

保存session id的方式可以采用cookie,这样在交互过程中浏览器可以自动的按照规则把这个标识发挥给服务器。一般这个cookie的名字都是类似于SEEESIONID。但cookie可以被人为的禁止,则必须有其他机制以便在cookie被禁止时仍然能够把session id传递回服务器。 经常被使用的一种技术叫做URL重写,就是把session id直接附加在URL路径的后面。还有一种技术叫做表单隐藏字段。就是服务器会自动修改表单,添加一个隐藏字段,以便在表单提交时能够把session id传递回服务器

你可能感兴趣的:(cookie和session)