我正在寻找一个更好的方法来解决我的问题.我在我的登录表单上记住了我的功能.用户点击记住我的框,我的API发送给我令牌.
我的问题是什么是最好的方式存储这个令牌,并再次验证用户,当他们回到我的网站?
我以为,
>创建Cookie并在那里存储令牌.
>创建本地存储.
请给我任何可能帮助我的建议.
解决方法
我会用这样的工厂代码使用document.cookie:
创建一个cookie(例如这个cookie在一年中过期):
app.factory('$remember',function() {
return function(name,values) {
var cookie = name + '=';
cookie += values + ';';
var date = new Date();
date.setDate(date.getDate() + 365);
cookie += 'expires=' + date.toString() + ';';
document.cookie = cookie;
}
});
该工厂移除Cookie:
app.factory('$forget',function() {
return function(name) {
var cookie = name + '=;';
cookie += 'expires=' + (new Date()).toString() + ';';
document.cookie = cookie;
}
});
那么每当一个用户使用$记住成功登录缓存的密钥:
$remember('my_cookie_name',response.user._id);
并且在登录用户时请始终检查cookie是否存在,然后使用标准登录名并将其保存到其Cookie中.如果记住我没有启用,请忘记document.cookie