Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/wix/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何在express.js中限制角色之间的任务,即管理员和用户_Javascript_Angularjs_Mongodb_Express_Mongoose - Fatal编程技术网

Javascript 如何在express.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

在我的项目中,我有两个角色

是的 行政及 使用者

我的要求是,我必须限制用户任务,如管理员只能添加用户,但即使作为用户登录,我也可以发布。我要克服这个问题,谁能帮我。我使用的是express.js、mongodb服务器端、客户端angular.js

这是我的密码

添加用户功能:

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)