Javascript 如何在express.js中限制角色之间的任务,即管理员和用户
在我的项目中,我有两个角色 是的 行政及 使用者 我的要求是,我必须限制用户任务,如管理员只能添加用户,但即使作为用户登录,我也可以发布。我要克服这个问题,谁能帮我。我使用的是express.js、mongodb服务器端、客户端angular.js 这是我的密码 添加用户功能:Javascript 如何在express.js中限制角色之间的任务,即管理员和用户,javascript,angularjs,mongodb,express,mongoose,Javascript,Angularjs,Mongodb,Express,Mongoose,在我的项目中,我有两个角色 是的 行政及 使用者 我的要求是,我必须限制用户任务,如管理员只能添加用户,但即使作为用户登录,我也可以发布。我要克服这个问题,谁能帮我。我使用的是express.js、mongodb服务器端、客户端angular.js 这是我的密码 添加用户功能: exports.adduser = function(req, res) { delete req.body.roles; var user = new User(req.body); var
exports.adduser = function(req, res) {
delete req.body.roles;
var user = new User(req.body);
var message = null;
// Add missing user fields
user.provider = 'local';
user.displayName = user.firstName + ' ' + user.lastName;
user.save(function(err) {
if (err) {
return res.status(400).send({
message: errorHandler.getErrorMessage(err)
});
} else {
//send mail to user
agenda.now('New_User_Create_Notify', {data:user.username});
res.jsonp(user);
}
});
};
路线:::
app.route('/auth/adduser').post(users.adduser);
如果已设置用户角色 您可以在adduser函数中执行此操作
if(req.body.roles.indexOf("admin") == -1){
return res.status(403).send({
message:"user doesnt have required permision"
});
}else{
user.save(function(err) {
if (err) {
return res.status(400).send({
message: errorHandler.getErrorMessage(err)
});
} else {
//send mail to user
agenda.now('New_User_Create_Notify', {data:user.username});
res.jsonp(user);
}
}Thnks为了回复,我收到了这样一个错误:“cannot cal method indexof undefined”也添加了这个,但无法解决我的问题exports.adduser=函数(req,res,io)