<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<meta http-equiv="X-UA-Compatible" content="ie=edge" />
<title>7天后自动更新cookie</title>
</head>
<body>
<script>
// 浏览器自动删除cookie的前提条件: cookie设置的时间与当前时间至少晚8个小时整, 大于等于8小时以上时浏览器就会自动删除cookie
function setcookie(name, value, days) {
var d = new Date();
d.setTime(d.getTime() + days * 24 * 60 * 60 * 1000);
var expires = d.toGMTString();
document.cookie = name + "=" + value + ";expires=" + expires;
}
function getCookie(cname) {
var name = cname + "=";
var ca = document.cookie.split(";");
for (var i = 0; i < ca.length; i++) {
var c = ca[i].trim();
if (c.indexOf(name) == 0) {
return c.substring(name.length, c.length);
}
}
return "";
}
console.log(getCookie("openId"));
if (getCookie("openId")) {
// cookie存在就不重新调用接口 不刷新openId
console.log("啥都不做");
} else {
// cookie不存在时, 说明7天已过,先调用接口重新获取openId, 再重新设置7天过期时间
// 这里要调用接口重新获取openId
setcookie("openId", "123", 7);
}
</script>
</body>
</html>
7天后自动更新cookie
最新推荐文章于 2024-04-24 13:11:16 发布