我使用JQuery $ .cookie在登录时保存我的应用程序用户令牌,然后在每次尝试使用以下代码访问任何应用程序功能时读取用户令牌:
var Token = '';
var cookieContent = '';
if(typeof $.cookie('MyAPP') === 'undefined'){
cookieContent = '';
}else{
cookieContent = $.cookie('MyAPP');
Token = JSON.parse(cookieContent); //Error here
console.log('Token' + Token);
}
我的问题是第一次执行此代码时,我收到错误:
SyntaxError: Unexpected token o
在JSON.parse,如果我点击刷新再次调用此代码,它正常工作没有任何问题。所以我想知道如何避免这个错误?
据我所知,这个错误是因为$ .cookie正在返回一个没有被JSON解析的[Object],但我不确定为什么它会在第一次执行代码时返回对象然后第二次正常工作?还有什么办法可以避免这个错误吗?感谢
更新:以下是我首先保存cookie的方法:
function saveCookie(minutes, Token) {
var date = new Date();
var m = minutes;
date.setTime(date.getTime() + (m * 60 * 1000));
$.cookie.json = true;
$.cookie("MyAPP", Token, { expires: date });
}