【发布时间】:2014-07-03 00:03:46
【问题描述】:
编辑
对于那些刚刚发现这一点的人,Express 的文档在此示例中有一个错误。您需要在部分中使用next(); 语句:
people.use(function(req, res, next) {
next();//Added to make example work
});
原帖
如果您查看“Routes”下的Express 4.0 documentation,建议使用路由器拆分应用程序的方法。我试着做一个示例应用程序。
app.js
var express = require('express');
var app = express();
var port = process.env.PORT || 8080;
app.route('/').get(function(req, res, next) {
res.send('Hello World');
});
//Try to use modular routes ...
app.use('/people', require('./routes/people').people);
//Start up server
app.listen(port);
console.log('Magic happens on port ' + port);
people.js
var express = require('express'); //<- Included because it throws an error otherwise
var people = express.Router();
people.use(function(req, res, next) {
});
people.get('/', function(req, res, next) {
});
module.exports.people = people;
目录结构
/
app.js
/routes
people.js
当我运行项目并导航到“localhost:8080”时,我得到了预期的“Hello World”响应。但是,当我转到 'localhost:8080/people' 时,浏览器只是坐着旋转。由于这是项目本身的示例代码,我很惊讶这不起作用。有什么想法吗?
谢谢!
【问题讨论】:
标签: javascript node.js express directory