Skip to content

Commit

Permalink
migrated to express4.12.3
Browse files Browse the repository at this point in the history
Signed-off-by: Mark Gutierrez <mrk.rio.gtrrz@gmail.com>
  • Loading branch information
Mark Gutierrez committed Apr 10, 2015
1 parent 14400a0 commit 7ea69af
Show file tree
Hide file tree
Showing 3 changed files with 40 additions and 24 deletions.
40 changes: 24 additions & 16 deletions config/express.js
Expand Up @@ -5,6 +5,13 @@ var express = require('express');
var flash = require('connect-flash');
var helpers = require('view-helpers');
var config = require('./config');
var compression = require('compression');
var favicon = require('serve-favicon');
var logger = require('morgan');
var cookieParser = require('cookie-parser');
var bodyParser = require('body-parser');
var methodOverride = require('method-override');
var session = require('express-session');

module.exports = function(app, passport) {

Expand All @@ -16,20 +23,20 @@ module.exports = function(app, passport) {
app.locals.pretty = true;

//Should be placed before express.static
app.use(express.compress({
app.use(compression({
filter: function(req, res) {
return (/json|text|javascript|css/).test(res.getHeader('Content-Type'));
},
level: 9
}));

//Setting the fav icon and static folder
app.use(express.favicon());
app.use(favicon(config.root + '/public/img/icons/favicon.ico'));
app.use(express.static(config.root + '/public'));

//Don't use logger for test env
if (process.env.NODE_ENV !== 'test') {
app.use(express.logger('dev'));
app.use(logger('dev'));
}

//Set views path, template engine and default layout
Expand All @@ -39,17 +46,21 @@ module.exports = function(app, passport) {
//Enable jsonp
app.enable("jsonp callback");

app.configure(function() {
if (process.env.NODE_ENV === 'development') {
//cookieParser should be above session
app.use(express.cookieParser());
app.use(cookieParser());

// request body parsing middleware should be above methodOverride
app.use(express.urlencoded());
app.use(express.json());
app.use(express.methodOverride());
app.use(bodyParser.urlencoded({ extended: true }));
app.use(bodyParser.json());
app.use(methodOverride());

//express/mongo session storage
app.use(express.session({ secret: '$uper$ecret$e$$ionKey'}));
app.use(session({
resave: false, // don't save session if unmodified
saveUninitialized: false, // don't create session until something stored
secret: '$uper$ecret$e$$ionKey'
}));

//connect flash for flash messages
app.use(flash());
Expand All @@ -61,9 +72,6 @@ module.exports = function(app, passport) {
app.use(passport.initialize());
app.use(passport.session());

//routes should be at the last
app.use(app.router);

//Assume "not found" in the error msgs is a 404. this is somewhat silly, but valid, you can do whatever you like, set properties, use instanceof etc.
app.use(function(err, req, res, next) {
//Treat as 404
Expand All @@ -77,14 +85,14 @@ module.exports = function(app, passport) {
error: err.stack
});
});

//Assume 404 since no middleware responded
app.use(function(req, res, next) {
app.use(function(err, req, res, next) {
res.status(404).render('404', {
url: req.originalUrl,
error: 'Not found'
});
});

});
}
};
12 changes: 7 additions & 5 deletions config/routes.js
Expand Up @@ -58,11 +58,13 @@ exports.init = function(app, passport, auth) {
app.param('userId', users.user);

// Article Routes
app.get('/articles', articles.all);
app.post('/articles', auth.requiresLogin, articles.create);
app.get('/articles/:articleId', articles.show);
app.put('/articles/:articleId', auth.requiresLogin, auth.article.hasAuthorization, articles.update);
app.del('/articles/:articleId', auth.requiresLogin, auth.article.hasAuthorization, articles.destroy);
app.route('/articles')
.get(articles.all)
.post(auth.requiresLogin, articles.create);
app.route('/articles/:articleId')
.get(articles.show)
.put(auth.requiresLogin, auth.article.hasAuthorization, articles.update)
.delete(auth.requiresLogin, auth.article.hasAuthorization, articles.destroy);

// Finish with setting up the articleId param
// Note: the articles.article function will be called everytime then it will call the next function.
Expand Down
12 changes: 9 additions & 3 deletions package.json
Expand Up @@ -18,9 +18,8 @@
"postinstall": "bower install"
},
"dependencies": {
"express": "3.4.8",
"express": "4.12.3",
"jade": "1.3.1",
"sequelize-sqlite": "1.7.0",
"connect-flash":"0.1.1",
"crypto": "0.0.3",
"passport": "0.2.0",
Expand All @@ -39,7 +38,14 @@
"lodash": "latest",
"winston": "latest",
"sequelize-mysql": "latest",
"passport-google": "latest"
"passport-google": "latest",
"body-parser": "1.12.2",
"compression": "1.4.3",
"cookie-parser": "1.3.4",
"express-session": "1.10.4",
"method-override": "2.3.2",
"morgan": "1.5.2",
"serve-favicon": "2.2.0"
},
"devDependencies": {
"supertest": "latest",
Expand Down

0 comments on commit 7ea69af

Please sign in to comment.