1

服务器上,我有以下代码:

var userId = Accounts.createUser({"email": email});
var stampedLoginToken = Accounts._generateStampedLoginToken();
Accounts._insertLoginToken(userId, stampedLoginToken);

呼叫Meteor.loginWithToken(stampedLoginToken)不起作用,因为loginWithToken仅在客户端上可用。我的问题:

1)是否可以loginWithToken在服务器端使用?

2)如果我不能使用loginWithToken,有没有其他方法可以模拟用户登录?

谢谢。

注意:我使用的是第三方 iOS DDP 客户端github.com/martijnwalraven/meteor-ios

4

1 回答 1

3

您只能在客户端执行编程登录,请参阅文档:在方法名称的右侧,有“客户端”标签,表示该方法只能在客户端运行。

您不能在服务器上登录用户并期望他们在客户端上登录,因为 Meteor 不知道应该登录的确切客户端。此外,它依赖于某种会话变量,因此无法执行在服务器端。

您唯一能做的就是在客户端执行登录。

于 2015-12-07T23:33:53.107 回答