-
Notifications
You must be signed in to change notification settings - Fork 0
/
app.js
36 lines (30 loc) · 913 Bytes
/
app.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
const path = require('path')
const config = require('config-lite')(__dirname)
const Paloma = require('paloma')
const app = global.app = new Paloma()
const logger = require('./app/lib/logger')
app.on('error', (e) => logger.error(e))
app.constant('_', require('lodash'))
app.constant('config', config)
app.constant('db', require('./app/lib/db'))
app.constant('redis', require('./app/lib/redis'))
app.constant('logger', logger)
app.use(require('koa-helmet')())
app.use(require('@koa/cors')())
app.use(require('koa-logger')())
app.use(require('koa-body')({
multipart: true,
formidable: {
uploadDir: path.join(__dirname, 'upload'),
keepExtensions: true
}
}))
app.use(require('koa-res')({
debug: process.env.NODE_ENV !== 'production'
}))
app.load('./app/service')
app.load('./app/controller')
app.load('./app/route')
app.listen(config.port, () => {
console.log(`listening on ${config.port}`)
})