Node ExpressJS Input Validation

Im using node 0.10.8 and expressJS 3.2.5.

I installed express-validator:

npm install express-validator

In app.js:

var express = require('express')
  , i18n = require('i18next')
  , routes = require('./routes')
  , user = require('./routes/user')
  , http = require('http')
  , path = require('path');
  , expressValidator = require('express-validator');

....  

app.set('port', process.env.PORT || 3000);
app.use(i18n.handle);
app.set('views', __dirname + '/views');
app.set('view engine', 'jade');
app.use(express.favicon());
app.use(express.logger('dev'));
app.use(express.bodyParser());
app.use(expressValidator);
app.use(express.methodOverride());
app.use(app.router);
app.use(express.static(path.join(__dirname, 'public')));

...

The problem is that any page will not load in browser. When expressValidator = require('express-validator') and app.use(expressValidator); is removed, the application will work.

Is there any conflict on the version and other module I used?

Thanks

expressValidator is a function that returns a middleware function.

So you need to use:

app.use(expressValidator());