我正在使用'帐户基础'和'帐户 - 密码'包和Accounts.createUser方法从登录表单创建用户(即我没有使用accounts-ui包)。
documentation解释了这样创建的用户包含的服务'对象
"包含特定登录服务使用的数据。例如,它 重置字段包含忘记密码链接使用的标记及其 resume字段包含用于保持登录状态的标记 会话"
这是真的,使用我的登录表单创建的帐户都有loginTokens。但是,当我刷新浏览器时,这些令牌将被删除,用户将被注销。
文档似乎表明,简历令牌由accounts-base / accounts-password包自动处理。我错过了什么?
Accounts.createUser({
username: username,
email: username,
password: password
}, function (err) {
if (err) {
alert(err)
} else {
Router.go('/member/' + Meteor.userId() +'/edit')
}
});
创建:
"resume" :
{ "loginTokens" :
[
{
"when" : ISODate("2014-04-17T22:13:50.832Z"),
"hashedToken" : "KstqsW9aHqlw6pjfyQcO6jbGCiCiW3LGAXJaVS9fQ+o="
}
]
}
...但是在刷新时:
"resume" : { "loginTokens" : [ ] } },
答案 0 :(得分:1)
在对我的代码进行详尽的审计后,我发现我在(注意)调用注销按钮事件限制之外的Account.logout方法。它以某种方式成为孤儿'在较早的代码重新分解期间
所以我的错。