UNPKG

catproxy

Version:

a node proxy or host change tools

28 lines (26 loc) 717 B
import getHttpsSer from './httpsProxySer'; import Promise from 'promise'; import util from 'util'; import log from './log'; let servers = { length: 0 }; let serversPromise = {}; export default serverName => { // 不传递servername则用sni if (!serverName) { serverName = 'localhost'; } if (servers[serverName]) { return Promise.resolve(servers[serverName]); } else { serversPromise[serverName] = serversPromise[serverName] || getHttpsSer(serverName).then(info => { servers[serverName] = info; servers['length'] += 1; log.debug('当前代理服务器数据:' + servers.length); delete serversPromise[serverName]; return info; }); return serversPromise[serverName]; } };