添加更多路由后,每页上的express.js错误500

时间:2015-11-09 14:53:26

标签: javascript node.js express

我正在使用最新版本的express并使用express生成器来创建我的基本文件夹和文件结构。现在,在app.js文件中添加更多路由后,我在每个页面上收到错误500.

以下是我添加路线app.js的部分:

var routes = require('./routes/index');
var play = require('./routes/play');
var login = require('./routes/login');
var register = require('./routes/register');


app.use('/', routes);
app.use('/play', play);
app.use('/login', login);
app.use('/register', register);

我的play.js文件如下所示:

var express = require('express');
var router = express.Router();

router.get('/', function(req, res, next) {
    res.render('index', { page: 'play' });
});

module.exports = router;

我的login.jsregister.js文件看起来像这样(直到现在还没有真正改变):

var express = require('express');
var router = express.Router();

router.get('/', function(req, res, next) {
    res.render('index', { page: 'login' });
});

module.exports = router;

我的文件夹结构如下:

projectfolder\routes\play.js 
projectfolder\views\index.ejs 
projectfolder\views\modules\Templatefiles.ejs 
projectfolder\app.js

我错了什么?

1 个答案:

答案 0 :(得分:1)

您应该在更一般的路线之后指定更具体的路线。

重新排序您的路线:

app.use('/play', play);
app.use('/login', login);
app.use('/register', register);
app.use('/', routes);

在快递中,路线的顺序很重要。您获得500,因为/路由的处理程序没有playlogin等路径的处理程序。