From 6ad097a8c8a1aa38095ac1a6f8fa2cdd6325618a Mon Sep 17 00:00:00 2001 From: xiaojunnuo Date: Fri, 26 Mar 2021 09:30:14 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E5=AE=89=E5=85=A8=E6=A8=A1=E5=BC=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- packages/core/src/config/index.js | 3 +++ packages/core/src/modules/server/index.js | 7 ++++++- packages/gui/src/view/pages/index.vue | 15 +++++++++++++-- packages/gui/src/view/pages/server.vue | 7 +++++++ 4 files changed, 29 insertions(+), 3 deletions(-) diff --git a/packages/core/src/config/index.js b/packages/core/src/config/index.js index 5d7ef7ae..4e733e84 100644 --- a/packages/core/src/config/index.js +++ b/packages/core/src/config/index.js @@ -28,6 +28,9 @@ module.exports = { keyPath: getRootCaKeyPath() } }, + intercept: { + enabled: true + }, intercepts: { 'github.com': { '/.*/.*/releases/download/': { diff --git a/packages/core/src/modules/server/index.js b/packages/core/src/modules/server/index.js index 1529555d..8a9c41ae 100644 --- a/packages/core/src/modules/server/index.js +++ b/packages/core/src/modules/server/index.js @@ -37,7 +37,7 @@ const serverApi = { const allConfig = config.get() const serverConfig = lodash.cloneDeep(allConfig.server) - const intercepts = serverConfig.intercepts + let intercepts = serverConfig.intercepts const dnsMapping = serverConfig.dns.mapping if (allConfig.plugin) { @@ -55,6 +55,11 @@ const serverApi = { }) } + if (serverConfig.intercept.enabled === false) { + // 如果设置为关闭拦截 + intercepts = {} + } + for (const key in plugins) { const plugin = plugins[key] if (plugin.overrideRunningConfig) { diff --git a/packages/gui/src/view/pages/index.vue b/packages/gui/src/view/pages/index.vue index a74d0dfb..743ad309 100644 --- a/packages/gui/src/view/pages/index.vue +++ b/packages/gui/src/view/pages/index.vue @@ -20,12 +20,17 @@
- + + + 安全模式 + + + 默认模式 - + 增强模式 @@ -159,9 +164,15 @@ export default { async modeChange () { const mode = this.config.app.mode if (mode === 'ow') { + this.config.server.intercept.enabled = true this.config.server.dns.speedTest.enabled = false this.config.plugin.overwall.enabled = true } else if (mode === 'default') { + this.config.server.intercept.enabled = true + this.config.server.dns.speedTest.enabled = true + this.config.plugin.overwall.enabled = false + } else if (mode === 'safe') { + this.config.server.intercept.enabled = false this.config.server.dns.speedTest.enabled = true this.config.plugin.overwall.enabled = false } diff --git a/packages/gui/src/view/pages/server.vue b/packages/gui/src/view/pages/server.vue index 352cdaca..26f976c0 100644 --- a/packages/gui/src/view/pages/server.vue +++ b/packages/gui/src/view/pages/server.vue @@ -42,6 +42,13 @@ + + + + 启用拦截 + + +