Javascript 从NodeJS ExpressJS中的req.body中删除变量

Javascript 从NodeJS ExpressJS中的req.body中删除变量,javascript,json,node.js,express,request,Javascript,Json,Node.js,Express,Request,我收到一个包含大量信息的JSON,但我想删除一个特定的数据,例如,如果我收到变量名,我想在数据库中添加JSON之前删除这个变量。这是我的职能职位: app.post("/:coleccion", function (req, res, next) { POST if(req.body.name) // Here I need delete "name" if I receive this variable <------ req.collection

我收到一个包含大量信息的JSON,但我想删除一个特定的数据,例如,如果我收到变量名,我想在数据库中添加JSON之前删除这个变量。这是我的职能职位:

app.post("/:coleccion", function (req, res, next) {
POST
    if(req.body.name)
            // Here I need delete "name" if I receive this variable <------
    req.collection.insert(req.body, {}, function (e, result) {
        if(e) return next(e);
        res.send(result);
    });
});
app.post(“/:coleccion”),函数(请求、恢复、下一步){
邮递
if(请求主体名称)
//在这里,如果我收到这个变量,我需要删除“name”
应该在javascript对象中工作

检查

应该在javascript对象中工作


选中

我建议您只选择实际需要的属性,而不是删除不需要的属性。否则,客户端可以发送任何它想要的内容,包括以
$
开头的字段,这些字段将得到MongoDB的特殊处理

这是最简单的方法:

var data = {
  email: req.body.email,
  age: req.body.age,
  gender: req.body.gender
}

req.collection.insert(data, ...)
您还可以使用来完成此工作:

var data = _.pick(req.body, 'email', 'age', 'gender')

req.collection.insert(data, ...)

我建议您只选择您真正想要的属性,而不是删除您不想要的属性。否则,客户端可以发送它想要的任何内容,包括以
$
开头的字段,这些字段将得到MongoDB的特殊处理

这是最简单的方法:

var data = {
  email: req.body.email,
  age: req.body.age,
  gender: req.body.gender
}

req.collection.insert(data, ...)
您还可以使用来完成此工作:

var data = _.pick(req.body, 'email', 'age', 'gender')

req.collection.insert(data, ...)

你的目标集合也有属性吗?如果没有,默认情况下不应保存。是的,但我想知道如何删除的属性可能的副本你的目标集合也有属性吗?如果没有,默认情况下不应保存。是的,但我想知道如何删除属性可能的副本e of