【发布时间】:2016-05-21 12:28:24
【问题描述】:
我正在尝试使用 Meteor.call() 并传入两个变量来完成该方法
Template.RegisterForm.events({
'submit form': function(event) {
event.preventDefault();
var emailVar = event.target.registerEmail.value;
var passwordVar = event.target.registerPassword.value;
Meteor.call('registerUser', emailVar, passwordVar )
}
});
但是当我调用该方法时,emailVar 和 passwordVar 并没有通过。
registerUser: function (email, password) {
var id = Accounts.createUser({
email: email,
password: password
});
}
它们出现未定义??
【问题讨论】:
-
我应该指出,以这种方式将用户的凭据发送到服务器是个坏主意。
Accounts.createUser从客户端使用时会在转发到服务器之前对密码进行加密。在您的情况下,您可以在创建帐户时捕获未加密的密码。 -
?我不是有意加密用户密码吗?帐户密码/流星处理解密?我已经成功登录并将用户保存到数据库 - 我的主要问题是目前使用角色验证用户。
-
我只是建议您在客户端上运行
Accounts.createUser,因为它的目的是使用它,而不是创建一个 shim 从客户端在服务器上运行它。 -
是的,我看到文档说 createUser 是一个客户端函数,但是我想知道安全性吗?
标签: variables meteor methods call