UNPKG

whistle

Version:

HTTP, HTTP2, HTTPS, Websocket debugging proxy

47 lines (43 loc) 1.8 kB
var getRules = require('./rules'); var getValues = require('./values'); var util = require('./util'); var config = require('../../../lib/config'); var rulesUtil = require('../../../lib/rules/util'); var ca = require('../../../lib/https/ca'); var proxy = require('../lib/proxy'); var properties = rulesUtil.properties; var logger = proxy.logger; var pluginMgr = proxy.pluginMgr; module.exports = function(req, res) { var lastSvrLog = logger.getLogs(0, 1)[0]; util.sendGzip(req, res, { wName: config.whistleName, disableInstaller: config.disableInstaller, account: config.account, version: config.version, custom1: properties.get('Custom1'), custom2: properties.get('Custom2'), hasInvalidCerts: ca.hasInvalidCerts, supportH2: config.enableH2, lastSvrLogId: lastSvrLog && lastSvrLog.id, lastDataId: proxy.getLastDataId(), clientId: util.getClientId(), clientIp: util.getClientIp(req), mrulesClientId: config.mrulesClientId, mrulesTime: config.mrulesTime, mvaluesClientId: config.mvaluesClientId, mvaluesTime: config.mvaluesTime, latestVersion: properties.getLatestVersion('latestVersion'), latestClientVersion: properties.getLatestVersion('latestClientVersion'), server: util.getServerInfo(req), rules: getRules(), values: getValues(), interceptHttpsConnects: properties.isEnableCapture(), enableHttp2: properties.isEnableHttp2(), plugins: pluginMgr.getPlugins(), disabledPlugins: !config.notAllowedDisablePlugins && properties.get('disabledPlugins') || {}, disabledAllPlugins: !config.notAllowedDisablePlugins && properties.get('disabledAllPlugins'), disabledAllRules: !config.notAllowedDisableRules && properties.get('disabledAllRules'), localUIHost: config.localUIHost }); };