解密Cookie,这一篇就够了(2)

直接调用函数,例如let cookie = getCookie(); cookie.name即为对应cookie。

// 读取Cookie函数 function getCookie() { let cookieArr = document.cookie.split("; "); // 特别注意!cookie中的数据都是以分号加空格区分开 let obj = {}; cookieArr.forEach( v => { let arr = v.split("="); obj[arr[0]] = unescape(arr[1]); // unescape 解码 }); return obj } 3.删除Cookie:

直接调用:delCookie("xxx");

//删除Cookie function delCookie(name){ // 将 cookie 的 max-age 属性设置 0 来实现对 cookie 的删除 document.cookie = `${name}=;max-age=0`; }

在ios系统上面,设置Cookie为汉字时会设置失败,所以需要将汉字进行编码,再储存到Cookie,取出来的时候也需要解码,encode:escape(),decode:unescape()。

四、其他

Cookie是跨域的,也就是在不同的域名中,访问的Cookie的时候,只能访问对应的域名的Cookie。

每个Cookie的大小一般不超过4KB,超过以后,Cookie将会被忽略,不会被设置

浏览器每次向服务器发起请求,就会自动附上Cookie

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:http://www.heiqu.com/e44507df501626372021bc5ef3b964d8.html