-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathkoa.js
44 lines (35 loc) · 955 Bytes
/
koa.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
var koa = require("koa");
var jade = require("koa-jade");
var serve = require("koa-static");
var router = require("koa-router")();
var bodyParser = require("koa-bodyparser");
var control = require("./control");
var app = koa();
app.use(function *(next){
var start = new Date;
yield next;
var ms = new Date - start;
this.set('X-Response-Time', ms + 'ms');
console.log("%s %s - %s", this.method, this.url, ms);
});
app.use(serve(__dirname, {
index: "index.html",
hidden: false,
maxage: 10000,
defer: false
}));
app.use(bodyParser());
app.use(jade.middleware({
debug: false,
pretty: false,
noCache: process.env === 'development',
viewPath: __dirname + '/views',
baseDir: __dirname
}));
app.use(router.routes());
app.use(router.allowedMethods());
router
.post('/rank', control.rankHandle)
.get('/list/:id', control.listHandle);
app.listen(3000);
console.log("koa listening on port 3000...");