forked from tl-open-source/tl-rtc-file
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathserverapi.js
63 lines (53 loc) · 1.93 KB
/
serverapi.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
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
const express = require("express");
const fs = require('fs');
const https = require('https');
const conf = require("./conf/cfg.json");
const fileApiRouters = require("./src/controller/router")();
const db = require("./src/tables/db");
const utils = require("./src/utils/utils");
const resRouter = conf.api.router.res;
//打印logo
utils.tlConsoleIcon()
let app = express();
utils.tlConsole("api init start ...")
if (!conf.db.open) {// 没开db
app.use(async function (req, res, next) {
req.ctx = {};
req.ctx.tables = {};
req.ctx.dbClient = {};
await next();
})
//res
for(let key in resRouter) app.use(key,express.static(resRouter[key]));
//file api
for(let key in fileApiRouters) app.use(key,fileApiRouters[key])
let options = {
key: fs.readFileSync('./conf/keys/server.key'),
cert: fs.readFileSync('./conf/keys/server.crt')
}
https.createServer(options,app).listen(conf.api.port);
utils.tlConsole("express init done ...")
utils.tlConsole("api server runing on ", conf.api.port, " successful");
} else {// 开了db
(async () => {
let { tables, dbClient } = await db.excute(conf)
utils.tlConsole("db init done ...")
app.use(async function (req, res, next) {
req.ctx = {};
req.ctx.tables = tables;
req.ctx.dbClient = dbClient;
await next();
})
//res
for(let key in resRouter) app.use(key,express.static(resRouter[key]));
//file api
for(let key in fileApiRouters) app.use(key,fileApiRouters[key])
let options = {
key: fs.readFileSync('./conf/keys/server.key'),
cert: fs.readFileSync('./conf/keys/server.crt')
}
https.createServer(options,app).listen(conf.api.port);
utils.tlConsole("express init done ...")
utils.tlConsole("api server runing on ", conf.api.port, " successful");
})();
}