Роутеры в express 4
Доброго дня! Просматриваю скринкасты по node.js, но использую версию express при этом 4, попутно пытаясь разобраться в механизмах.
вынес соответственно в основной модуль var express = require('express'), config = require('./config'), log = require('./libs/log')(module), app = express(), middleware = require('./middleware')(app, config), routes = require('./routes')(app); app.listen(config.get('port'), function(){ log.info('Server started and listenning on ' + config.get('port') + ' port.'); }); Где подключается модуль с мидлварвми module.exports = function(app, config){ var favicon = require('serve-favicon'), mongoose = require('../libs/mongoose'), morgan = require('morgan'), bodyParser = require('body-parser'), coockieParser = require('cookie-parser'), session = require('express-session'), MongoStore = require('connect-mongo')(session), jade = require('jade'); app.use(favicon('./public/favicon.ico')); ... app.use(session({ secret: config.get('session:secret'), key: config.get('session:key'), cookie: config.get('session:cookie'), resave: config.get('session:resave'), saveUninitialized: config.get('session:saveUninitialized'), store: new MongoStore({ mongooseConnection: mongoose.connection }) })); }; И модуль с роутами module.exports = function (app){ app.get('/', require('./frontpage').get); app.get('/login', require('./login').get); app.post('/login', require('./login').post); }; При этом не передается управление роутам. Т.е. страница висит и браузер ждет ответа от сервера. Если подключать модуль routes в модуле middleware var routes = require('../routes')(app); то роуты работают, но при этом не отрабатывают мидлвары (сессии, бодипарсеры после отправки данных формой не вешают на req соответствующие параметры). Собственно вопрос, что я делаю не так, и чего я недопонимаю? Спасибо. |
Вопрос снят.
Подключал app.use(cookieParser); вместо app.use(cookieParser()); |
Часовой пояс GMT +3, время: 00:32. |