Meteor accounts password: TypeError: Accounts.setPassword is not a function
Meteor accounts password: TypeError: Accounts.setPassword is not a function
我正在使用:
流星1.8版,
账户密码@1.5.1
调用时:
Meteor.methods({
setPassword(newPassword, userId) {
check(userId, String);
check(newPassword, String);
if(Meteor.user().isAdmin){
Accounts.setPassword(userId, newPassword);
}
},
});
来自
Meteor.call('setPassword', password, this.userId);
我收到这个错误:
Exception while simulating the effect of invoking 'setPassword' TypeError: Accounts.setPassword is not a function
但密码仍然设置...
Meteor 方法可以 运行 在服务器端和客户端 (see here)。这里的错误来自客户端:simulating the effect
表示客户端正在尝试计算对服务器查询的乐观答案。
Accounts 对象在客户端和服务器端都可用,但我敢打赌,出于安全原因,Accounts.setPassword 函数仅在服务器端可用。
为避免该错误,您可以:将 meteor 方法定义放在服务器专用文件夹中 see here (like in this file app_code/imports/api/accounts/server/methods.js
), or wrap it with if(Meteor.isServer)
see here,如下所示:
if(Meteor.isServer){
Meteor.methods({
setPassword(newPassword, userId) {
check(userId, String);
check(newPassword, String);
if(Meteor.user().isAdmin){
Accounts.setPassword(userId, newPassword);
}
},
});
}
我正在使用: 流星1.8版, 账户密码@1.5.1
调用时:
Meteor.methods({
setPassword(newPassword, userId) {
check(userId, String);
check(newPassword, String);
if(Meteor.user().isAdmin){
Accounts.setPassword(userId, newPassword);
}
},
});
来自
Meteor.call('setPassword', password, this.userId);
我收到这个错误:
Exception while simulating the effect of invoking 'setPassword' TypeError: Accounts.setPassword is not a function
但密码仍然设置...
Meteor 方法可以 运行 在服务器端和客户端 (see here)。这里的错误来自客户端:simulating the effect
表示客户端正在尝试计算对服务器查询的乐观答案。
Accounts 对象在客户端和服务器端都可用,但我敢打赌,出于安全原因,Accounts.setPassword 函数仅在服务器端可用。
为避免该错误,您可以:将 meteor 方法定义放在服务器专用文件夹中 see here (like in this file app_code/imports/api/accounts/server/methods.js
), or wrap it with if(Meteor.isServer)
see here,如下所示:
if(Meteor.isServer){
Meteor.methods({
setPassword(newPassword, userId) {
check(userId, String);
check(newPassword, String);
if(Meteor.user().isAdmin){
Accounts.setPassword(userId, newPassword);
}
},
});
}