mirror of
https://github.com/github/codeql.git
synced 2025-12-22 19:56:32 +01:00
36 lines
746 B
JavaScript
36 lines
746 B
JavaScript
var http = require('http');
|
|
|
|
function decorate(method) {
|
|
return function(req, res) {
|
|
return method.call(this, req, res);
|
|
};
|
|
}
|
|
|
|
function Server(routes) {
|
|
this.routes = routes;
|
|
}
|
|
|
|
Server.prototype = {
|
|
requestHandler: function() {
|
|
var routes = this.routes;
|
|
return function(req, res) { // route handler
|
|
var handler = routes[req.url] || routes['*'];
|
|
|
|
return handler.call(this, req, res);
|
|
}.bind(this);
|
|
},
|
|
};
|
|
|
|
var routes = {
|
|
'/foo/bar': decorate((req, res) => { // route handler
|
|
res.end("foo");
|
|
}),
|
|
'/bar/foo': function(req, res) { // route handler
|
|
res.end("bar");
|
|
}
|
|
};
|
|
|
|
var appServer = new Server(routes);
|
|
var server = http.createServer(appServer.requestHandler());
|
|
|
|
server.listen(8080, () => {}); |