UNPKG

tframe-utility

Version:
69 lines (63 loc) 2.56 kB
/* 服务端配置文件预处理器 @config:tFrameV8格式的服务端 config.json文件 */ module.exports = config => { let _conf = config; let _whitelist = []; // server段处理 for (let k of Object.keys(_conf.server)) { let val = _conf.server[k].addr; _conf.server[k].addr = val || _conf.app.defaultAddr; // 对配置中使用中的服务节添入白名单 if (val && _conf.server[k].inUsed && !_whitelist.includes(val)) { let _port = parseInt(_conf.server[k].port); _whitelist.push((_port === 80 && val) || `${val}:${_port}`); } } // db段处理 for (let dbk of Object.keys(_conf.db)) { let valTp = _conf.db[dbk].dbType; let valHost = _conf.db[dbk].dbHost; let valUser = _conf.db[dbk].dbUser; let valPwd = _conf.db[dbk].dbPwd; let valPort = _conf.db[dbk].dbPort; let valPool = _conf.db[dbk].dbPool; _conf.db[dbk].dbType = valTp || _conf.app.defaultDbType; _conf.db[dbk].dbHost = valHost || _conf.app.defaultDbHost; _conf.db[dbk].dbUser = valUser || _conf.app.defaultDbUser; _conf.db[dbk].dbPwd = valPwd || _conf.app.defaultDbPwd; _conf.db[dbk].dbPort = (valPort && parseInt(valPort)) || parseInt(_conf.app.defaultDbPort); let dbOptKeys = Object.keys(_conf.db[dbk]); if (dbOptKeys.includes('dbName')) { let valDBName = _conf.db[dbk].dbName; _conf.db[dbk].dbName = valDBName || _conf.app.defaultDbName; } if (dbOptKeys.includes('dbPool')) { let dftPool = _conf.app.defaultDbPool; let valMaxCct = _conf.db[dbk].dbPool.maxConnCount; let valMinCct = _conf.db[dbk].dbPool.minConnCount; let valCnnLife = _conf.db[dbk].dbPool.connLifeSpan; _conf.db[dbk].dbPool.maxConnCount = (valMaxCct > 0 && valMaxCct) || dftPool.maxConnCount; _conf.db[dbk].dbPool.minConnCount = (valMinCct > 0 && valMinCct) || dftPool.minConnCount; _conf.db[dbk].dbPool.connLifeSpan = (valCnnLife > 0 && valCnnLife) || dftPool.connLifeSpan; } if (dbOptKeys.includes('defaultCharset')) { let valCharset = _conf.db[dbk].defaultCharset; _conf.db[dbk].defaultCharset = valCharset || _conf.app.defaultCharset; } if (dbOptKeys.includes('defaultCharset')) { let valCollate = _conf.db[dbk].defaultCollate; _conf.db[dbk].defaultCollate = valCollate || _conf.app.defaultCollate; } } return { // 处理后的配置 config: _conf, // 白名单 whitelist: _whitelist }; };