如何通过Restful对Mongoose请求进行用户验证



所以我想首先找到用户想要删除的注释,然后检查用户名是否匹配,以验证用户是否有权删除(我知道用户名不是最安全的方法,这只是测试版(。

这就是我现在拥有的

// Deleting One
router.delete('/delete/:id', (req, res) => {
const voter = req.body.voter;
const id = req.params.id;
var sendContent = {};
Comments.findById({_id: id}, (error, result) => {
console.log(`${voter} and ${result.user}`)
if(voter !== result.user) {
sendContent.msg = 'You can't delete someone else's Comment';
sendContent.code = 500;
res.send(sendContent);
} else {
sendContent.msg = 'Currently in Test Mode but this is where the comment would be deleted';
sendContent.code = 500;
res.send(sendContent);
}
result.save()
})
})

是否有result.delete((函数或Something?这可能是一个愚蠢的问题,但提前谢谢。

否,您需要使用remove或其他一些删除/查找和删除函数。

// Deleting One
router.delete('/delete/:id', (req, res) => {
const voter = req.body.voter;
const id = req.params.id;
var sendContent = {};
Comments.findById({_id: id}, (error, result) => {
console.log(`${voter} and ${result.user}`)
if(voter !== result.user) {
sendContent.msg = 'You can't delete someone else's Comment';
sendContent.code = 500;
res.send(sendContent);
} else {
sendContent.msg = 'Currently in Test Mode but this is where the comment would be deleted';
sendContent.code = 500;
Comments.remove({_id: id}, (err, deleted) =>
!err && console.log('comment deleted')
res.send(sendContent)
);
}
})
})

最新更新