[英]Express js :separate controller and router file returns 404 error on route
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. 我想将我的所有路由从app.js
文件分成一个seprat route
文件,该文件将从控制器目录加载控制器。
Here is my folder structure 这是我的文件夹结构
<project folder>
controllers
testController.js
routes
route.js
app.js
Here is my testController.js
这是我的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. route
目录下的route.js
。
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. 当我访问我的路由localhost:3000/hello
我有404错误。
I just tried the solutions from this question separate file for routes in express 我刚尝试了这个问题的解决方案单独的文件中的快递路线
app.js 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')));
Please Update 请更新
var routes = require('./route')
to 至
var routes = require('./routes/route');
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.