【发布时间】:2012-02-10 11:40:00
【问题描述】:
所以我开始使用 Node.js。我在Nodejs.org 上看到了 Ryan Dahl 的视频,听说他向网站推荐了 Express-js。
我下载了 Express 的最新版本,并开始编写代码。我在 / 上有一个完全成熟的静态视图,但是一旦我尝试发送参数,就会收到如下错误:
Cannot GET /wiki
我尝试按照expressjs.com 上的指南进行操作,但在最新版本中使用路线的方式发生了变化,导致该指南无法使用。
指南:
app.get('/users/:id?', function(req, res, next){
var id = req.params.id;
if (id) {
// do something
} else {
next();
}
});
由 Express 生成:
app.get('/', routes.index);
当我尝试添加另一条路线时,我的问题出现了。
app.get('/wiki', routes.wiki_show);
我尝试了很多方法,但我不断收到Cannot GET /wiki (404) 错误。
routes/index.js 看起来像这样:
exports.index = function(req, res) {
res.render('index', { title: 'Test', articles: articles, current_article: current_article, sections: sections })
};
我在那里做的唯一一件事就是添加一些参数(同一个文件中的数组),这就是我的工作。但是当我复制内容并将exports.index 更改为exports.wiki 或exports.wiki_show 时,我仍然收到Cannot GET /wiki 错误。
谁能向我解释我在这里缺少什么? - 谢谢。
【问题讨论】:
-
你添加路由器中间件了吗?
-
你下载了最新的快递?你是从 github 还是通过 NPM 获得的?
-
@DeaDEnD 是的,我很确定 :)
-
@RyanOlds 我是从 GitHub 得到的 :)
-
Master 不稳定。使用 NPM 安装它,你应该得到 2.5.6。另外,指定路由时会自动绑定路由中间件。
标签: node.js url-routing express