NodeJS Express multiple route file through one route file

前端 未结 2 676
抹茶落季
抹茶落季 2020-12-31 23:59

I am learning NodeJS. I have a nodeJS API project. I want to use version in routes so i created following folder structure.

application/    
    --app.js
            


        
2条回答
  •  我在风中等你
    2021-01-01 00:54

    I'd do it a bit different than @Shaharyar

    routes.js

    var express = require('express');
    var router = express.Router();
    
    router.get('/', function(req, res) {
      res.send('Welcome to Node JS V1');
    });
    
    router.use('/users', require('./users').router);
    
    module.exports.router = router;
    

    users.js

    var express = require('express');
    var router = express.Router();
    
    router.get('/',function(req, res){    
      res.send('Get all users.');
    });
    
    router.post('/', function(req, res) {
      // Create user
      res.send('Some response.');
    });
    
    module.exports.router = router;
    

    To simplify it I'd drop the .router on module.exports and do.

    router.use('/users', require('./users'));
    

    Also the same for the route.js file, then in your server.js or wherever:

    router.use('/api/v1', require('./routes'));
    router.use('/api/v2', require('./routes2'));
    

提交回复
热议问题