Catch server errors and return 500
Reviewers: xymostech Reviewed By: xymostech Differential Revision: http://phabricator.benalpert.com/D39
This commit is contained in:
parent
3caccbf933
commit
33625f7b08
4
Makefile
4
Makefile
|
@ -1,6 +1,6 @@
|
||||||
FILES=parser.js style.css build.js index.html
|
FILES=parser.js style.css build.js index.html
|
||||||
|
|
||||||
.PHONY: build ship copy server
|
.PHONY: build ship copy serve
|
||||||
build: parser.js
|
build: parser.js
|
||||||
|
|
||||||
ship: build
|
ship: build
|
||||||
|
@ -14,5 +14,5 @@ copy: build
|
||||||
parser.js: parser.jison
|
parser.js: parser.jison
|
||||||
./node_modules/.bin/jison parser.jison
|
./node_modules/.bin/jison parser.jison
|
||||||
|
|
||||||
server:
|
serve:
|
||||||
node server.js
|
node server.js
|
||||||
|
|
12
server.js
12
server.js
|
@ -9,21 +9,29 @@ var app = express();
|
||||||
|
|
||||||
app.use(express.logger());
|
app.use(express.logger());
|
||||||
|
|
||||||
app.get("/MJLite.js", function(req, res) {
|
app.get("/MJLite.js", function(req, res, next) {
|
||||||
var b = browserify();
|
var b = browserify();
|
||||||
b.add("./MJLite");
|
b.add("./MJLite");
|
||||||
b.transform(jisonify);
|
b.transform(jisonify);
|
||||||
|
|
||||||
var stream = b.bundle({standalone: "MJLite"});
|
var stream = b.bundle({standalone: "MJLite"});
|
||||||
|
|
||||||
var body = "";
|
var body = "";
|
||||||
stream.on("data", function(s) { body += s; });
|
stream.on("data", function(s) { body += s; });
|
||||||
|
stream.on("error", function(e) { next(e); });
|
||||||
stream.on("end", function() {
|
stream.on("end", function() {
|
||||||
res.setHeader("Content-Type", "text/javascript");
|
res.setHeader("Content-Type", "text/javascript");
|
||||||
res.send(body);
|
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);
|
app.listen(7936);
|
||||||
console.log("Serving on http://0.0.0.0:7936/ ...");
|
console.log("Serving on http://0.0.0.0:7936/ ...");
|
||||||
|
|
Loading…
Reference in New Issue
Block a user