如果可用,您可以使用localStorage
,如果没有,则使用 cookie(或任何您认为的):
var appToken = createToken();
try {
if (localStorage.getItem) {
localStorage.downloadAppAlert = appToken;
} else {
setCookie('downloadAppAlert', appToken, 10); // name, a string value, num. of days
}
} catch(e) {
console.log(e);
}
然后你可以使用一些功能来设置你的 cookie - 即我刚刚在w3schools中找到的这个:
function setCookie(c_name,value,exdays)
{
var exdate=new Date();
exdate.setDate(exdate.getDate() + exdays);
var c_value=escape(value) + ((exdays==null) ? "" : "; expires="+exdate.toUTCString());
document.cookie=c_name + "=" + c_value;
}
要通过名称检索 cookie 值 -示例中为downloadAppAlert - 您可以使用 w3schools 链接上的那个或类似的东西:
function readCookie(name) {
var nameEQ = name + '=';
var ca = document.cookie.split(';');
for(var i=0;i < ca.length;i++) {
var c = ca[i];
while (c.charAt(0)==' ') c = c.substring(1,c.length);
if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length);
}
return null;
}
此外,要检索先前设置的项目,localStorage
您只需:
var appToken = localStorage.getItem('downloadAppAlert');
编辑:对不起,匆忙我忘了提到什么createToken()
。它应该是一个随机的字母数字生成器函数。您可以在 SO 上找到很多内容,例如:
JavaScript中的随机字母数字字符串?
在 JavaScript 中生成随机字符串/字符
生成(伪)随机字母数字字符串