Files
tl-rtc-file/svr/serverapi.js
https://blog.iamtsm.cn 8044e369fe feat: 环境部署相关完善
feat: 调整turn服务帐号默认为有效帐号模式
feat: 文档更新
2023-08-05 01:50:49 +08:00

65 lines
2.0 KiB
JavaScript

const express = require("express");
const fs = require('fs');
const https = require('https');
const { inject_env_config } = require("./conf/env_config");
const conf = inject_env_config(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");
})();
}