0
我正在使用'accounts-base'和'accounts-password'软件包以及Accounts.createUser方法从登录表单创建用户(即,我没有使用accounts-ui包)。流星帐户 - 用户注销刷新
的documentation解释从而创建的用户包括“服务”对象
“含有由特定的登录服务所使用的数据,例如,其 复位字段包含由忘记密码链接中使用的令牌,并且其 resume字段包含令牌,用于保持您在 会话之间登录。“
这是真的,使用我的登录表单创建的帐户都有loginTokens。但是,当我刷新浏览器时,这些令牌将被删除并且用户已注销。
该文档似乎暗示resume-token由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" : [ ] } },
'Accounts.createUser'是一个服务器功能。你如何在回调中访问'Router.go'客户端功能?注意你在哪里放置代码... –
根据[documentation](http://docs.meteor.com/#accounts_createuser),Account.createUser在客户端和服务器上均可用。我在两种情况下都使用它,但对于不同的问题,这个问题的结果是相同的:用户被成功创建,创建了令牌,但刷新浏览器中的页面会将用户注销并删除令牌。我承认我不清楚应该发生什么,但足以说我不希望用户在页面刷新时出于任何原因而被注销。 –