进行更新删除资源操作时,一般是在中间件查一次数据库判断当前用户是否该资源的拥有者吗?
请问进行更新删除资源操作时,一般是在中间件查一次数据库判断当前用户是否该资源的拥有者吗? 还是如何设计比较优雅 为何我看论坛的开源代码nodeclub,发现进行更新操作时,auth中间件这样写的:
// 非登录用户直接屏蔽
var auth = function (req, res, next) {
var ep = new eventproxy();
ep.fail(next);
var accessToken = String(req.body.accesstoken || req.query.accesstoken || '');
accessToken = validator.trim(accessToken);
UserModel.findOne({accessToken: accessToken}, ep.done(function (user) {
if (!user) {
res.status(401);
return res.send({success: false, error_msg: '错误的accessToken'});
}
if (user.is_block) {
res.status(403);
return res.send({success: false, error_msg: '您的账户被禁用'});
}
req.user = user;
next();
}));
};
exports.auth = auth;
都不用检测当前用户是否该资源的拥有者的吗?