node js从返回的json中删除一个字段

时间:2016-05-18 08:39:11

标签: json node.js

根据以下JSON中的内容,我需要删除名为password的属性。我已经尝试了以下代码,但它没有用。看看我添加代码的评论。

app.post('/my/user',function(req,res){
    var user = req.body;

    User.addUser(user, function(err,users){
        if(err){
            throw err;
        } else {
                delete users['password']; // THIS IS WHERE I ADDED MY CODE. BUT IT DOESN'T WORK

            res.json({users, status: "SUCCESS" });
        }

    })
});

1 个答案:

答案 0 :(得分:2)

您似乎正在使用Mongoose,在这种情况下,您首先需要将生成的文档转换为常规JS对象,然后才能删除其任何属性:

var userObj = users.toObject();
delete userObj.password;

res.json({ users : userObj, status: "SUCCESS" });

有关Document.toObject() here的更多信息。