Catch server errors and return 500

Reviewers: xymostech

Reviewed By: xymostech

Differential Revision: http://phabricator.benalpert.com/D39
This commit is contained in:
Ben Alpert 2013-07-07 14:13:25 -07:00
parent 3caccbf933
commit 33625f7b08
2 changed files with 12 additions and 4 deletions

View File

@ -1,6 +1,6 @@
FILES=parser.js style.css build.js index.html
.PHONY: build ship copy server
.PHONY: build ship copy serve
build: parser.js
ship: build
@ -14,5 +14,5 @@ copy: build
parser.js: parser.jison
./node_modules/.bin/jison parser.jison
server:
serve:
node server.js

View File

@ -9,21 +9,29 @@ var app = express();
app.use(express.logger());
app.get("/MJLite.js", function(req, res) {
app.get("/MJLite.js", function(req, res, next) {
var b = browserify();
b.add("./MJLite");
b.transform(jisonify);
var stream = b.bundle({standalone: "MJLite"});
var body = "";
stream.on("data", function(s) { body += s; });
stream.on("error", function(e) { next(e); });
stream.on("end", function() {
res.setHeader("Content-Type", "text/javascript");
res.send(body);
});
});
app.use(express.static(path.join(__dirname, 'static')));
app.use(express.static(path.join(__dirname, "static")));
app.use(function(err, req, res, next) {
console.error(err.stack);
res.setHeader("Content-Type", "text/plain");
res.send(500, err.stack);
});
app.listen(7936);
console.log("Serving on http://0.0.0.0:7936/ ...");