From 9898bd5548d6f8e7749e274138b258ee4cfe7cfa Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=88=98=E5=98=89=E4=BC=9F?= <8473136@qq.com> Date: Sat, 20 Jan 2024 11:24:59 +0800 Subject: [PATCH] =?UTF-8?q?:sparkles:=20=E5=A2=9E=E5=8A=A0=E4=BB=A3?= =?UTF-8?q?=E7=90=86=E7=9A=84=E9=85=8D=E7=BD=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- electron/api/frpc.ts | 5 +++- electron/storage/config.ts | 2 ++ src/views/config/index.vue | 57 +++++++++++++++++++++++++++++--------- 3 files changed, 50 insertions(+), 14 deletions(-) diff --git a/electron/api/frpc.ts b/electron/api/frpc.ts index 09cbbda..a3fe7cb 100644 --- a/electron/api/frpc.ts +++ b/electron/api/frpc.ts @@ -78,6 +78,9 @@ transport.tls.keyFile = "${config.tlsConfigKeyFile}" transport.tls.trustedCaFile = "${config.tlsConfigTrustedCaFile}" transport.tls.serverName = "${config.tlsConfigServerName}" ` : ""} +${config.proxyConfigEnable ? ` +transport.proxyURL = "${config.proxyConfigProxyUrl}" +` : ""} ${proxyToml.join("")} @@ -161,7 +164,7 @@ export const reloadFrpcProcess = () => { /** * 停止frpc子进程 */ -export const stopFrpcProcess = (callback?:() => void) => { +export const stopFrpcProcess = (callback?: () => void) => { if (frpcProcess) { treeKill(frpcProcess.pid, (error: Error) => { if (error) { diff --git a/electron/storage/config.ts b/electron/storage/config.ts index 9e486d0..de91af5 100644 --- a/electron/storage/config.ts +++ b/electron/storage/config.ts @@ -20,6 +20,8 @@ export type Config = { tlsConfigKeyFile: string; tlsConfigTrustedCaFile: string; tlsConfigServerName: string; + proxyConfigEnable: boolean; + proxyConfigProxyUrl: string; }; /** diff --git a/src/views/config/index.vue b/src/views/config/index.vue index 10efac1..531b89d 100644 --- a/src/views/config/index.vue +++ b/src/views/config/index.vue @@ -24,7 +24,8 @@ type Config = { tlsConfigKeyFile: string; tlsConfigTrustedCaFile: string; tlsConfigServerName: string; - + proxyConfigEnable: boolean; + proxyConfigProxyUrl: string; }; type Version = { @@ -45,6 +46,8 @@ const formData = ref({ tlsConfigKeyFile: "", tlsConfigTrustedCaFile: "", tlsConfigServerName: "", + proxyConfigEnable: false, + proxyConfigProxyUrl: "" }); const loading = ref(1); @@ -70,7 +73,16 @@ const rules = reactive({ tlsConfigCertFile: [{required: true, message: "请选择TLS证书文件", trigger: "change"}], tlsConfigKeyFile: [{required: true, message: "请选择TLS密钥文件", trigger: "change"}], tlsConfigTrustedCaFile: [{required: true, message: "请选择CA证书文件", trigger: "change"}], - tlsConfigServerName: [{required: true, message: "请输入TLS Server名称", trigger: "blur"}] + tlsConfigServerName: [{required: true, message: "请输入TLS Server名称", trigger: "blur"}], + proxyConfigEnable: [{required: true, message: "请选择代理状态", trigger: "change"}], + proxyConfigProxyUrl: [ + {required: true, message: "请输入代理地址", trigger: "change"}, + { + pattern: /^https?\:\/\/(\w+:\w+@)?([a-zA-Z0-9.-]+)(:\d+)?$/, + message: "请输入正确的代理地址", + trigger: "blur" + } + ], }); const versions = ref>([]); @@ -177,21 +189,21 @@ onUnmounted(() => { 手动刷新 - - - - + + + + 点击这里去下载 - - - - - - - + + + + + + + @@ -292,6 +304,25 @@ onUnmounted(() => { + +
代理
+
+ + + + + +
日志配置