我对node/express/mongoDB编码还是新手,在通过node/express向mongoDB添加/更新值时遇到了一个小问题。
app.post('/', (req, res, next) => {
let data = {
first_value: req.body.first_value,
second_value: req.body.second_value,
};
dbase.collection("testDB").insertOne(data, (err, result) => {
if (err) {
console.log(err);
}
res.send('data added successfully');
});
});
app.put('/:id', (req, res, next) => {
var id = { _id: new ObjectID(req.params.id) };
dbase.collection("testDB").updateOne({ _id: id }, {
$set: {
first_value: req.body.first_value
second_value: req.body.second_value,
}
}, (err, result) => {
if (err) {
throw err;
}
res.send('data updated sucessfully');
});
});
app.put不会改变DB中的值,app.post只会在我尝试使用Postman时在新条目的每一部分添加“null”,当我使用html表单添加新值时,数据添加正确。
我的代码有什么问题?
2条答案
按热度按时间ef1yzkbh1#
对于app.post,您能否提供您输入数据的方式以及格式(例如,application/raw、application/x-www-form-urlencoded等)的屏幕截图?
对于
app.put
,您需要更正以下内容。更正后的代码如下所示:希望你能抓住重点,这对你很有效。
6yt4nkrj2#