2015-10-19 75 views
1

我正在學習Nodejs。我想在URL中運行兩個腳本(一個是登錄,另一個是聊天)。當我運行npm start命令然後我的登錄頁面打開,當我運行節點index.js命令然後我的聊天應用程序工作。我想讓我的聊天應用程序在登錄後工作。因此,我應該在哪裏指定我的聊天索引,以便它可以工作。如何在節點js中運行兩個程序

我app.js在這裏

var http = require('http'); 
var express = require('express'); 
var session = require('express-session'); 
var bodyParser = require('body-parser'); 
var errorHandler = require('errorhandler'); 
var cookieParser = require('cookie-parser'); 
var MongoStore = require('connect-mongo')(session); 
var routes = require('./routes/index'); 
var users = require('./routes/users'); 
var app = express(); 

app.set('port', process.env.PORT || 3000); 
app.set('views', __dirname + '/app/server/views'); 
app.set('view engine', 'jade'); 
app.use(cookieParser()); 
app.use(session({ 
secret: 'faeb4453e5d14fe6f6d04637f78077c76c73d1b4', 
proxy: true, 
resave: true, 
saveUninitialized: true, 
store: new MongoStore({ host: 'localhost', port: 27017, db: 'nodechat'}) 
}) 
); 
    app.use(bodyParser.json()); 
app.use(bodyParser.urlencoded({ extended: true })); 
app.use(require('stylus').middleware({ src: __dirname + '/app/public' })); 
app.use(express.static(__dirname + '/app/public')); 

require('./app/server/routes')(app); 

if (app.get('env') == 'development') app.use(errorHandler()); 

http.createServer(app).listen(app.get('port'), function(){ 
console.log('Express server listening on port ' + app.get('port')); 
}); 

回答

1

您需要到餐桌child_process的是,經過你的登錄條件滿足,這樣

var fork = require('child_process').fork; 
var child = fork('node ./index.js'); 

有各種爭論與像叉子使用何時退出子進程等。請參閱documentation