Node.js 如何在没有获取的情况下获取路由的json

Node.js 如何在没有获取的情况下获取路由的json,node.js,express,jwt,Node.js,Express,Jwt,我有一个路由,它返回一个json和用户授权 router.get('/test', function(req, res,next ) { var token = req.cookies.auth; if (!token) return res.status(401).send({ message: ""}); jwt.verify(token, config.secret, function(err, decoded) { if (err) return

我有一个路由,它返回一个json和用户授权

router.get('/test', function(req, res,next ) {

    var token = req.cookies.auth;
    if (!token) return res.status(401).send({ message: ""});

    jwt.verify(token, config.secret, function(err, decoded) {
      if (err) return res.status(500).send({ message: "Failed to authenticate token."});
      User.findById(decoded.id,function(err,user){
          if (err) return res.status(500).send({ message: "problmes found user, sorry "});

          if(!user) return res.status(404).send({message: "user not found "});
          res.status(200).send({message:user.role});
      });

    });
  });
我想在另一个路由的变量中捕获json响应以授权操作

router.get('/', function(req, res, next) {

  if (jsonresponse == grant ){
  var allMusique;
  var idMaxMusique;
  MongoClient.connect(url, function(err, db) {
      if (err) throw err;
      var dbo = db.db("projet_node");
      dbo.collection("musiques").find({}).toArray(function(err, result) {
          if (err) throw err;
          allMusique = result;
          var size = allMusique.length-1;
          idMaxMusique = parseInt(result[size].id)+1;
          res.render('musiques', { resultat: allMusique, idMax: idMaxMusique });
      });
      });}
      else{
          res.render('unauthorized');
      }
});
创建Controllers/middleware/authenticate.js文件并编写以下代码

const jwt = require('jsonwebtoken')
module.exports = (req, res, next) => {
  const token = req.headers['token'] || req.body.token || req.cookies.token;
  if (token) {
    try {
      req.decoded = jwt.verify(token, JWT_SECRET_KEY) 
      // JWT_SECRET_KEY -> config.secret
      next()
    } catch (err) {
      res.status(403)
         .send({ success: false, message: 'Failed to authenticate token.' })
    }
  } 
  return res.status(403).send({
    success: false,
    message: 'No token provided.'
  })
}
创建controller/UserController.js文件

在routes/routes.js文件中


最重要的是,需要正确地使用“pathfile”,或者只需在require中反复检查文件和文件夹的路径。

为什么不制作中间件,一次添加多条路由,而不请求其他路由?因为我的数据库中有很多三个crud的路由projects@AshokPatidar因为我的项目中有很多三个积垢的路线
exports.getUser = function (req, res) {
  // Perform Your requirement of code 
  // return Something
}
exports.getUserTest = function (req, res) {
  // Perform Your requirement of code 
  // return Something
}
const authenticate = require('./Controllers/middlewares/authenticate');
const UserController = require('./Controllers/UserController');

// Routes with authentication. User must be login for get this routes
 router.get('/getUser', authenticate, UserController.getUser);  
// Routes without authentication. No need to login
 router.post('/getUserTest', UserController.getUserTest);