I would like seprate all of my routes from the app.js
file into a seprat
route
file which will loads the controllers from the controller directory.
Here is my folder structure
<project folder>
controllers
testController.js
routes
route.js
app.js
Here is my testController.js
module.exports = {
getMovie : function(req, res){
//do something
res.send('respond with test resource');
},
postMovie : function(req, res){
//do something
}
}
route.js
under route
directory.
var express = require('express');
//load the contrller
var test = require('../controllers/testController.js');
var router = express.Router();
router.route('/hello').get(test.getMovie);
module.exports = router;
when i access my route localhost:3000/hello
i got 404 error.
I just tried the solutions from this question separate file for routes in express
app.js
var express = require('express');
var path = require('path');
var favicon = require('serve-favicon');
var logger = require('morgan');
var cookieParser = require('cookie-parser');
var bodyParser = require('body-parser');
var routes = require('./routes');
var app = express();
app.use('api',routes);
app.use(logger('dev'));
app.use(bodyParser.json());
app.use(bodyParser.urlencoded({ extended: false }));
app.use(cookieParser());
app.use(express.static(path.join(__dirname, 'public')));