events.js:130 throw TypeError('listener must be a function')

我想运行一个node.js得到这个错误

events.js:130 throw TypeError('listener must be a function'); 

我的代码是,

 var connect = require("connect"); var http = require("http"); var app = connect(); // Logging middleware app.use(function(request, response, next) { console.log("In comes a " + request.method + " to " + request.url); next(); }); // Send "hello world" app.use(function(request, response) { response.writeHead(200, { "Content-Type": "text/plain" }); response.end("Hello world!\n"); }); http.createServer(app).listen(1337); 

现在在terminal上执行这个代码作为node app.js我得到一个错误

 events.js:130 throw TypeError('listener must be a function'); ^ TypeError: listener must be a function at TypeError (<anonymous>) at Server.EventEmitter.addListener (events.js:130:11) at new Server (http.js:1850:10) at Object.exports.createServer (http.js:1880:10) at Object.<anonymous> (/var/www/express/app.js:17:6) at Module._compile (module.js:456:26) at Object.Module._extensions..js (module.js:474:10) at Module.load (module.js:356:32) at Function.Module._load (module.js:312:12) at Function.Module.runMain (module.js:497:10) 

我安装了node.js和express.js。 如何执行这个代码?

我发现了这个错误。

问题是程序(app.js)不在框架文件夹的根目录下。 我把这个程序的位置改成了express框架的根文件夹。 现在它完美的工作。