我的 app.js 有以下内容:
var express = require('express')
, http = require('http')
, path = require('path')
, redis = require('redis')
, client = redis.createClient();
var app = express();
app.configure(function(){
app.set('port', process.env.PORT || 3000);
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(express.methodOverride());
app.use(express.cookieParser('your secret here'));
app.use(express.session());
app.use(app.router);
app.use(require('stylus').middleware(__dirname + '/public'));
app.use(express.static(path.join(__dirname, 'public')));
});
app.configure('development', function(){
app.use(express.errorHandler());
});
require('./routes')(app);
client.on("connect", function () {
console.log("Client on connect");
});
http.createServer(app).listen(app.get('port'), function(){
console.log("Express server listening on port " + app.get('port'));
});
我所尝试的只是使用node_redis库来连接 Redis 实例。Node.js 和 Redis 都安装在本地。我想指出的一件事是我创建并尝试使用 Jetbrains 的 Webstorm 运行这个项目(因为我想要一个为我提供一些调试功能的 IDE)。字符串 'Client on connect' 已记录到控制台,但我的应用程序几乎每次都会崩溃'Process finished with exit code 139'
。我尝试通过命令行运行该应用程序,该应用程序没有崩溃。最糟糕的是,当应用程序无法在 Webstorm 中运行时,没有任何类型的堆栈跟踪。有没有人知道问题是什么,或者我可以在哪里找到有关此错误代码的更多信息?
另外,为了让我们在同一个页面上:我的 Redis 服务器已启动并正在运行,并从另一个自定义 web 应用程序接收持续的数据流。我能够启动 redis-cli,并验证 Redis 是否确实包含任何数据。