Cookie 简介
Cookie 历来指就着牛奶一起吃的点心。然而,在因特网内,“Cookie”这个字有了完全不同的意思。那么“Cookie”到底是什么呢?“Cookie”是小量信息,由网络服务器发送出来以存储在网络浏览器上,从而下次这位独一无二的访客又回到该网络服务器时,可从该浏览器读回此信息。这是很有用的,让浏览器记住这位访客的特定信息,如上次访问的位置、花费的时间或用户首选项(如样式表)。Cookie 是个存储在浏览器目录的文本文件,当浏览器运行时,存储在 RAM 中。一旦你从该网站或网络服务器退出,Cookie 也可存储在计算机的硬驱上。当访客结束其浏览器对话时,即终止的所有 Cookie。
什么是Cookies(“小甜饼”)呢?简单来说,Cookies就是服务器暂时存放在你的电脑里的资料(.txt格式的文本文件),好让服务器用来辨认你的计算机。当你在浏览网站的时候,Web服务器会先送一小小资料放在你的计算机上,Cookies 会把你在网站上所打的文字或是一些选择都记录下来。当下次你再访问同一个网站,Web服务器会先看看有没有它上次留下的Cookies资料,有的话,就会依据Cookie里的内容来判断使用者,送出特定的网页内容给你。
在互联网世界中,Cookie是指某些网站为了辨别用户身份、进行session跟踪而储存在用户本地终端上的数据。
生存周期
Cookie可以保持登录信息到用户下次与服务器的会话,换句话说,下次访问同一网站时,用户会发现不必输入用户名和密码就已经登录了(当然,不排除用户手工删除Cookie)。而还有一些Cookie在用户退出会话的时候就被删除了,这样可以有效保护个人隐私。
Cookie在生成时就会被指定一个Expire值,这就是Cookie的生存周期,在这个周期内Cookie有效,超出周期Cookie就会被清除。有些页面将Cookie的生存周期设置为“0”或负值,这样在关闭浏览器时,就马上清除Cookie,不会记录用户信息,更加安全。
Cookie 用途
Cookie 的用途之一是存储用户在特定网站上的密码和 ID。
判断客户端是否禁用Cookie
⒈原生js
JavaScript 的 navigator 对象的有 cookieEnabled 属性,navigator.cookieEnabled会返回一个布尔值。如果浏览器支持Cookie,就会返回true,否则返回false。
var res = navigator.cookieEnabled;
console.log(res);
if(res){
alert('浏览器支持Cookie')
}else{
alert('浏览器已禁用Cookie')
}
2.jQuery
$(document).ready(function() {
var nowDate = new Date();
nowDate.setSeconds(dt.getSeconds() + 60);
document.cookie = "cookietest=1; expires=" + nowDate.toGMTString();
var cookiesEnabled = document.cookie.indexOf("cookietest=") != -1;
if(!cookiesEnabled){
alert('浏览器已禁用Cookie')
}else{
alert('浏览器支持Cookie')
}
});