1、cookie有大小限制,大小一般是4k,超過這個限制,cookie中無法存儲該數據
解決辦法:
1、key用短字符
2、如果value對應的是集合對象,我們可以增加cookie的數量解決大小限制問題(自己遇到的問題:后台查詢結果集為7個用戶所屬系統應用對象,存儲到cookie中時,只能存儲5個)
代碼:
$.cookie("count", data.system.length);
$.each(data.system, function(index,element) {
$.cookie("system"+index+"",JSON.stringify({"system":element}));
});
2、cookie的數量限制,30個以上(百度搜索的)
3、對cookie的刪除
Cookie[] cookies = request.getCookies();
for (Cookie cookie : cookies) {
if (cookie.getName().startsWith("system")||cookie.getName().startsWith("userinfo")){//對指定cookie的刪除
cookie.setMaxAge(0);//設置立即刪除
cookie.setPath("/");
response.addCookie(cookie);//一定要回寫到客戶端,否則設置無效
}
}