什么是客户端识别与cookie机制
- 什么是客户端识别:
HTTP服务器可能会同时与大量的客户端进行对话,这时就需要判断各个对话对应的客户端。这个判断识别对话客户端的过程,就是客户端识别了。
- 什么是cookie:
功能强大且高效的持久身份信息识别技术
- 识别了客户端可用做什么:
服务器识别了各个事务、会话对应的客户后,能够根据客户的分类保存于客户相关的信息、提供个性化的、有针对性的内容。
如何进行客户端识别
HTTP提供一些用以进行客户端识别的机制
- 承载客户身份信息的HTTP首部
- 客户端IP地址跟踪,通过用户的IP地址对其进行识别
- 用户登录,用认证方式来识别用户
- 胖URL, 在URL中嵌入识别信息
- cookie, 功能强大且高效的持久身份信息识别技术
HTTP首部
一些HTTP首部可以用来承载客户身份信息:
胖URL
有些Web站点会向每一个用户生成特定版本的URL(通常是向真正的URL中添加一些客户端识别信息进行拓展), 我们称之为胖URL
为什么会有cookie呢
Web应用程序是使用HTTP协议传输数据的。HTTP协议是无状态的协议。一旦数据交换完毕,客户端与服务器端的连接就会关闭,再次交换数据需要建立新的连接。这就意味着服务器无法从连接上跟踪会话
Cookie具有保质期
Cookie的特点
- 满足同源策略
- 虽然网站images.google.com与网站www.google.com同属于Google,但是域名不一样,二者同样不能互相操作彼此的Cookie
Cookie的增删改查
划重点: Cookie的形成是通过浏览器,也就是说客户端与服务器有个请求的过程,也就是三次握手的过程,所有你要设置Cookie的话,可以在本地搭建一个本地服务器,这样子设置的Cookie才有用!
增
document.cookie = "name=daydaylee;Max-Age=6000";
document.cookie = "name=daydaylee;Max-Age=6000"
我们看到的是Name就是识别字段名字,Value就是值,Domain是域,也就是当前这个Cookie可以谁调用,Path表示访问的路径,Max-Age表示设置的当前时间到Cookie失效的时间
删
只要把这个时间修改成-1或者是之前已经过去的时间就行,也就是失效
直接封装一个Cookie方法就行
// return this 链式调用
var manageCookie = {
setCookie : function(name, value, time){
document.cookie = name + "=" + value + ';max-age='