cookie基本常识

来源:互联网 发布:java web项目断点调试 编辑:程序博客网 时间:2024/06/10 07:19

   会话是一种持久的网络协议,用于完成服务器与客户端之间的一些交互行为。它比连接的粒度大,一次会话可能包含多次连接,每次连接都被认为是会话的一个操作。许多应用层网络协议都是由会话支持的,如FTP,Telnet等。而Http协议是无状态的,本身不支持会话,于是cookie便诞生了。

   通常意义上的Http协议的会话功能是:浏览器首次向服务器发起请求时,服务器生成一个唯一标识符并发送给客户端浏览器,浏览器将这个唯一标识符存储在cookie中。之后浏览器每次发起请求,都会向服务器传送这个唯一标识符,服务器因此识别用户。

   cookie机制采用的是在客户端保持状态的方案,而session机制采用的是在服务器端保持状态的方案。session机制需要借助cookie机制来达到保存标识的目的。服务器使用一种类似于散列表(也可能就是散列表)的结构来保存信息。一般cookie的名字都是类似于session id的。

   但cookie可以被人为禁止,则必须有其他机制以便在cookie被禁止时仍能够将session id传递回服务器。经常被使用的一种技术叫URL重写,就是把session id直接附加到URL路径的后面。还有一种技术叫做表单隐藏字段。

   cookie不是很安全,别人可以分析存放在本地的cookie并进行cookie欺骗。所以对于一些重要信息不应该使用cookie。

0 0