From 90233f006a2fabc4843e968e93936c660040c9e8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=88=98=E5=98=89=E4=BC=9F?= <8473136@qq.com> Date: Mon, 2 Dec 2024 14:53:21 +0800 Subject: [PATCH] =?UTF-8?q?:sparkles:=20=E5=A2=9E=E5=8A=A0=E9=80=82?= =?UTF-8?q?=E9=85=8Dsudp?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- electron/api/frpc.ts | 5 ++++- src/views/proxy/index.vue | 36 ++++++++++++++++++++++++++++-------- 2 files changed, 32 insertions(+), 9 deletions(-) diff --git a/electron/api/frpc.ts b/electron/api/frpc.ts index c32a5d9..e549bba 100644 --- a/electron/api/frpc.ts +++ b/electron/api/frpc.ts @@ -56,7 +56,8 @@ ${ : "" } [[${ - (m.type === "stcp" || m.type === "xtcp") && m.stcpModel === "visitors" + (m.type === "stcp" || m.type === "xtcp" || m.type === "sudp") && + m.stcpModel === "visitors" ? "visitors" : "proxies" }]] @@ -98,6 +99,7 @@ httpPassword = "${m.httpPassword}" break; case "stcp": case "xtcp": + case "sudp": if (m.stcpModel === "visitors") { // 访问者 toml += ` @@ -252,6 +254,7 @@ httpPassword = "${m.httpPassword}" break; case "stcp": case "xtcp": + case "sudp": if (m.stcpModel === "visitors") { // 访问者 ini += ` diff --git a/src/views/proxy/index.vue b/src/views/proxy/index.vue index e348163..18edb49 100644 --- a/src/views/proxy/index.vue +++ b/src/views/proxy/index.vue @@ -74,7 +74,7 @@ const editForm = ref(defaultForm.value); /** * 代理类型 */ -const proxyTypes = ref(["http", "https", "tcp", "udp", "stcp", "xtcp"]); +const proxyTypes = ref(["http", "https", "tcp", "udp", "stcp", "xtcp", "sudp"]); const stcpModels = ref([ { @@ -172,20 +172,28 @@ const isStcp = computed(() => { return editForm.value.type === "stcp"; }); +const isSudp = computed(() => { + return editForm.value.type === "sudp"; +}); + const isXtcp = computed(() => { return editForm.value.type === "xtcp"; }); const isStcpVisited = computed(() => { return ( - (editForm.value.type === "stcp" || editForm.value.type === "xtcp") && + (editForm.value.type === "stcp" || + editForm.value.type === "sudp" || + editForm.value.type === "xtcp") && editForm.value.stcpModel === "visited" ); }); const isStcpVisitors = computed(() => { return ( - (editForm.value.type === "stcp" || editForm.value.type === "xtcp") && + (editForm.value.type === "stcp" || + editForm.value.type === "sudp" || + editForm.value.type === "xtcp") && editForm.value.stcpModel === "visitors" ); }); @@ -463,7 +471,11 @@ const handleCopyAccessAddress = (proxy: Proxy) => { accessAddressStr = `${proxy.type}://${proxy.customDomains[0]}`; } else if (proxy.type === "tcp" || proxy.type === "udp") { accessAddressStr = `${frpcConfig.value.serverAddr}:${proxy.remotePort}`; - } else if (proxy.type === "stcp" || proxy.type === "xtcp") { + } else if ( + proxy.type === "stcp" || + proxy.type === "xtcp" || + proxy.type === "sudp" + ) { accessAddressStr = `${proxy.bindAddr}:${proxy.bindPort}`; } const { copy, copied } = useClipboard(); @@ -612,7 +624,9 @@ onUnmounted(() => { { 被访问者 @@ -796,7 +812,7 @@ onUnmounted(() => { -