forked from tsai/budibase
7 changed files with 83 additions and 155 deletions
@ -1,17 +1,15 @@ |
|||||
const Koa = require("koa") |
const Koa = require("koa") |
||||
const logger = require("koa-logger") |
const logger = require("koa-logger") |
||||
const router = require("./api") |
const api = require("./api") |
||||
const koaBody = require("koa-body") |
const koaBody = require("koa-body") |
||||
|
|
||||
const app = new Koa() |
const app = new Koa() |
||||
|
|
||||
module.exports = () => { |
// set up top level koa middleware
|
||||
app.keys = Object.keys(process.env) |
app.use(koaBody({ multipart: true })) |
||||
.filter(k => k.startsWith("COOKIE_KEY_")) |
app.use(logger()) |
||||
.map(k => process.env[k]) |
|
||||
|
|
||||
app.use(koaBody({ multipart: true })) |
// api routes
|
||||
app.use(logger()) |
app.use(api.routes()) |
||||
app.use(router(app).routes()) |
|
||||
|
|
||||
return app.listen(process.env.PORT || 4001) |
module.exports = app.listen(process.env.PORT || 4001) |
||||
} |
|
||||
|
|||||
@ -1,11 +1,6 @@ |
|||||
require("dotenv").config() |
require("dotenv").config() |
||||
const app = require("./app") |
const server = require("./app") |
||||
|
|
||||
async function startServer() { |
server.on("listening", () => { |
||||
const server = await app() |
console.log(`Budibase Server listening on port ${process.env.PORT}`) |
||||
server.on("listening", () => { |
}); |
||||
console.log(`Budibase Server listening on port ${process.env.PORT}`) |
|
||||
}) |
|
||||
} |
|
||||
|
|
||||
startServer() |
|
||||
@ -1,24 +0,0 @@ |
|||||
const session = require("koa-session") |
|
||||
|
|
||||
module.exports = app => { |
|
||||
const sessionConfig = { |
|
||||
key: "budi:sess" /** (string) cookie key (default is koa:sess) */, |
|
||||
/** (number || 'session') maxAge in ms (default is 1 days) */ |
|
||||
/** 'session' will result in a cookie that expires when session/browser is closed */ |
|
||||
/** Warning: If a session cookie is stolen, this cookie will never expire */ |
|
||||
maxAge: 86400000, |
|
||||
autoCommit: true /** (boolean) automatically commit headers (default true) */, |
|
||||
overwrite: true /** (boolean) can overwrite or not (default true) */, |
|
||||
httpOnly: true /** (boolean) httpOnly or not (default true) */, |
|
||||
signed: true /** (boolean) signed or not (default true) */, |
|
||||
rolling: false /** (boolean) Force a session identifier cookie to be set on every response. The expiration is reset to the original maxAge, resetting the expiration countdown. (default is false) */, |
|
||||
renew: false /** (boolean) renew session when session is nearly expired, so we can always keep user logged in. (default is false)*/, |
|
||||
store: { |
|
||||
get: async key => ({ key }), |
|
||||
set: async key => ({ key }), |
|
||||
destroy: async () => ({}), |
|
||||
}, |
|
||||
} |
|
||||
|
|
||||
return session(sessionConfig, app) |
|
||||
} |
|
||||
Loading…
Reference in new issue