Restructure server code to make embedding easier

This commit is contained in:
Nicholas O'Leary
2013-09-20 17:15:45 +01:00
parent 7348e475eb
commit 0ecbbca7e4
5 changed files with 109 additions and 86 deletions

10
red.js
View File

@@ -19,20 +19,18 @@ var util = require("util");
var express = require("express");
var crypto = require("crypto");
var settings = require("./settings");
var RED = require("./red/red.js");
var server;
var app = express();
var redApp = null;
if (settings.https) {
server = https.createServer(settings.https,function(req,res){app(req,res);});
} else {
server = http.createServer(function(req,res){app(req,res);});
}
redApp = require('./red/server.js').init(server,settings);
settings.httpRoot = settings.httpRoot||"/";
if (settings.httpRoot[0] != "/") {
@@ -51,9 +49,11 @@ if (settings.httpAuth) {
);
}
app.use(settings.httpRoot,redApp);
RED.init(server,settings);
app.use(settings.httpRoot,RED.app);
server.listen(settings.uiPort);
RED.start();
util.log('[red] Server now running at http'+(settings.https?'s':'')+'://127.0.0.1:'+settings.uiPort+settings.httpRoot);