server.js 669 B

12345678910111213141516171819202122232425262728
  1. const { logger, changeLevel } = require('./logger');
  2. const { createServer: createProxyServer } = require('./proxy_server');
  3. const DEFAULT_OPTIONS = {
  4. host: '127.0.0.1',
  5. socks: '127.0.0.1:1080',
  6. proxyListReloadTimeout: 60,
  7. port: 8080,
  8. };
  9. function createServer(opts) {
  10. const options = Object.assign({}, DEFAULT_OPTIONS, opts);
  11. if (typeof options.level === 'string') {
  12. changeLevel(logger, options.level);
  13. }
  14. const { port, socks, host } = options;
  15. // eslint-disable-next-line
  16. console.log(`SOCKS: ${socks}\nhttp-proxy listening: ${host}:${port}`);
  17. return createProxyServer(options).listen(port, host);
  18. }
  19. module.exports = {
  20. createServer,
  21. };