Node.js 每次用户请求受保护的路由时都可以在数据库中搜索吗?

Node.js 每次用户请求受保护的路由时都可以在数据库中搜索吗?,node.js,mongodb,express,authentication,passport.js,Node.js,Mongodb,Express,Authentication,Passport.js,我有一些受保护的路由,我想阻止未付费用户获得这些路由 每次用户请求其中一个路由时,我都会在数据库中搜索,如果他已经付费,我会呈现一个页面,如果他没有付费,我会将他重定向到主路由 例如: router.get('/videos', function(req, res) { User.findOne({email: req.user.email}, function(err, result) { if (err) {console.log(err);} else if (resu

我有一些受保护的路由,我想阻止未付费用户获得这些路由

每次用户请求其中一个路由时,我都会在数据库中搜索,如果他已经付费,我会呈现一个页面,如果他没有付费,我会将他重定向到主路由

例如:

router.get('/videos', function(req, res) {
  User.findOne({email: req.user.email}, function(err, result) {
    if (err) {console.log(err);}
    else if (result.isPaid) {
      res.render('videos')
    } else {
      res.redirect('/')
    }
  })
})
我知道这有一个问题,但到目前为止它仍然有效。。那么问题是什么呢?替代品是什么?

以下是用户模式:

const UserSchema = new mongoose.Schema({
  name: {type: String, required: true},
  email: {type: String, required: true},
  password: {type: String, required: true},
  date: {type: Date, default: Date.now},
  isPaid: {type: Boolean, default: false}
})