cookie

什么是cookie:

本身用于客户端和服务端通信。但是他有本地存储的功能,所以被“借用”

cookie是由服务器端生成,发送给User-Agent(一般是浏览器),(服务器告诉浏览器设置一下cookie),浏览器会将cookie以keyalue保存到某个目录下的文本文件内,下次请求同一网站时就发送该Cookie给服务器(前提是浏览器设置为启用cookie)。
cookie就是一个小型文件(浏览器对cookie的内存大小是有限制的-------用来记录一些信息)

为什么会有cookie:

本地缓存了一些数据,在回访网站时,可以节省时间,直接从本地获取。

cookie的特点:

具有保质期

每个cookie都有时间设置,一般会设置很长时间。

满足同源策略:

虽然网站images.google.com与网站www.google.com同属于Google,但是域名不一样,二者同样不能互相操作彼此的Cookie。

问题1:访问完zhidao.baidu.com 再访问wenku.baidu.com还需要重新登陆百度账号吗?

解决方案:document.domain

设置document.domain = ‘baidu.com’;

让页面属于这个基础域名下(那么此页面和任何二级域名为baidu.com的)设置限制----页面确实属于该基础域名之下那么资源公用了(ajax) cookie 共用了

cookie的个数和大小都用限制:

不同浏览器限制的个数不一样(一般20到50个),大小基本限制在4K左右。

cookie的安全性:

只是相对来说,对于黑客来说,没有什么安全的东西

简单的操作cookie(增,删,改,查)(需要在本地服务器下进行我用的是Wampserver

var manageCookie = {
	setCookie: function (name, value, time) {
		//cookie由属性名=属性值,保存时间max-age=111;组成 
		document.cookie = name + '=' + value + ';max-age=' + time;
		return this;
	},
	removeCookie: function (name) {
		return this.setCookie(name, '', -1);
	},
	getCookie: function (name, callback) {
		var allCookieAll = document.cookie.split('; ');
		for (var i = 0; i < allCookieAll.length; i++) {
			var itmeCookieAll = allCookieAll[i].split('=');
			if (itmeCookieAll[0] == name){
				callback(itmeCookieAll[1]);
				return this;
			}
		}
		callback(undefined);
		return this;
	}
}

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值