38 lines
998 B
JavaScript
38 lines
998 B
JavaScript
const Koa = require('koa');
|
|
const Router = require('koa-router');
|
|
const Static = require('koa-static');
|
|
const Cors = require('koa-cors');
|
|
const Mount = require('koa-mount');
|
|
const path = require('path');
|
|
|
|
const routePictures = require('./route/pictures');
|
|
const route35c3 = require('./route/35c3');
|
|
const routeCalendar = require('./route/calendar');
|
|
|
|
const app = new Koa();
|
|
const router = new Router();
|
|
|
|
route35c3(router);
|
|
routePictures(router);
|
|
routeCalendar(router);
|
|
|
|
app
|
|
.use(Cors())
|
|
.use(router.routes())
|
|
.use(router.allowedMethods())
|
|
.use(Static(path.resolve(__dirname, '../dist'), {}))
|
|
.use(Mount('/videos', Static(path.resolve(__dirname, '../videos'), {
|
|
setHeaders: (res) => {
|
|
res.setHeader('cache-control', 'immutable');
|
|
},
|
|
})))
|
|
.use(Mount('/pictures', Static(path.resolve(__dirname, '../pictures'), {
|
|
setHeaders: (res) => {
|
|
res.setHeader('cache-control', 'immutable');
|
|
},
|
|
})));
|
|
|
|
module.exports = app;
|
|
if (!module.parent) {
|
|
app.listen(8080);
|
|
}
|