web.js和npm express - 警告:不推荐使用express.createServer()

时间:2013-09-26 20:36:13

标签: javascript node.js amazon-ec2

Noob - 和第一个问题 - stackoverflow -

我在EC2 t1微实例上运行ubuntu - 以下内容来自我的web.js文件,下面是命令行中node web.js命令的输出。

我需要做些什么替代以防止下面的警告?

提前致谢,

大卫

var express = require('express');
var fs = require('fs');
var htmlfile = "index.html";

var app = express.createServer(express.logger());

app.get('(/', function(request, response) {
    var html = fs.readFileSync(htmlfile).toString();
    response.send(html);
});

var port = process.env.PORT || 8080;
app.listen(port, function() {
  console.log("Listening on " + port);
});

[ubuntu @ ip-10-185-34-47:〜/ bitstarter] $ node web.js

警告:express.createServer()已弃用,表达 应用程序不再继承自http.Server, 请使用:

  var express = require("express");
  var app = express();

聆听8080

编辑:已修复警告问题。下面的第一个回答就是诀窍。

新错误 - 完全相同的命令:node web.js ----

/home/ubuntu/bitstarter/node_modules/express/lib/utils.js:312   返回新的RegExp('^'+路径+'$',敏感?'':'我');                                                        ^ SyntaxError:无效的正则表达式:/ ^(//?$ /:未终止的组     在新的RegExp()     at Object.exports.pathRegexp(/home/ubuntu/bitstarter/node_modules/express/lib/utils.js:312:56)     在新路线(/home/ubuntu/bitstarter/node_modules/express/lib/router/route.js:35:23)     在Router.route(/home/ubuntu/bitstarter/node_modules/express/lib/router/index.js:295:15)     在路由器。(匿名函数)[as get](/home/ubuntu/bitstarter/node_modules/express/lib/router/index.js:308:16)     在Function.app。(匿名函数)[as get](/home/ubuntu/bitstarter/node_modules/express/lib/application.js:414:26)     在对象。 (/home/ubuntu/bitstarter/web.js:9:5)     在Module._compile(module.js:456:26)     at Object.Module._extensions..js(module.js:474:10)     在Module.load(module.js:356:32)

我在几小时后退出并重新登录后出现此错误,但我没有对代码进行任何更改。

1 个答案:

答案 0 :(得分:3)

警告已显示解决方案。

var express = require('express'),
    app = express();

app.use(express.logger());