前端Cookie的基本使用

    技术2025-05-25  44

    什么是Cookie

    页面用来保存用户特定信息 比如:自动登录、记住用户名等

    Cookie的特征

    同一个网站中所以页面共享一套Cookie数量、大小有限 IE6.0IE 7.0 8.0OperaFire FoxSafariChromeCookie个数每个域名下20个每个域名下50个每个域名30个每个域名50个没有限制每个域名53个Cookie大小4095字节4095字节4096字节4097字节4097字节4097字节 有过期时间 Cookie在生成时就会被指定一个Expire值,这就是Cookie的生存周期,在这个周期内Cookie有效,超出周期Cookie就会被清除。有些页面将Cookie的生存周期设置为“0”或负值,这样在关闭浏览器时,就马上清除Cookie,不会记录用户信息,更加安全。 Cookie满足同源策略 虽然网站images.google.com与网站www.google.com同属于Google,但是域名不一样,二者同样不能互相操作彼此的Cookie。 问题来了 举个例子: 访问玩zhidao.baidu.com 再访问wenku.baidu.com还需要重新登陆百度账号吗? 解决办法: 设置document.domain = ‘baidu.com’; 让页面属于这个基础域名下(那么此页面和任何二级域名为baidu.com的)

    Cookie的封装

    /* 2020/7/4 cookie操作 */ function setCookie(key, value, iDay) { var oDate = new Date(); oDate.setDate(oDate.getDate() + iDay); document.cookie = key + '=' + value + ';expires=' + oDate; } function removeCookie(key) { setCookie(key, '', -1);//这里只需要把Cookie过期时间设置为前一天便可以删除 } function getCookie(key) { var cookieArr = document.cookie.split('; '); for(var i = 0; i < cookieArr.length; i++) { var arr = cookieArr[i].split('='); if(arr[0] === key) { return arr[1]; } } return false; }
    Processed: 0.010, SQL: 9