我正在努力为我班上的一些学生开发一个后端,我无法让put方法为我的生活工作。只要有人试图使用它,它就会删除除mongo数据库中的ID之外的所有内容。我在服务器端的代码如下所示:
app.put("/methpain/api/users/:id", function(req, res) {
var updateDoc = req.body;
delete updateDoc._id;
db.collection(METHPAINUSERS).updateOne({_id: new ObjectID(req.params.id)}, updateDoc, function(err, doc) {
if (err) {
handleError(res, err.message, "Failed to update contact");
} else {
updateDoc._id = req.params.id;
res.status(200).json(updateDoc);
}
});
});
客户端请求如下所示:
$.ajax({
type: 'PUT',
dataType: 'json',
data: JSON.stringify({
"score": amount,
"email":loggedinuser.email,
"password":loggedinuser.password,
"_id":loggedinuser._id
}),
success: function (data) {
console.log(data);
getuser(loggedinuser.email)
},
error: function () {
alert("failed");
},
url: 'https://example.herokuapp.com/methpain/api/users/' + logedInUserId
});