diff --git a/electron/api/frpc.ts b/electron/api/frpc.ts index 5925fd9..1096974 100644 --- a/electron/api/frpc.ts +++ b/electron/api/frpc.ts @@ -50,8 +50,8 @@ type = "${m.type}" case "udp": toml += ` localIP = "${m.localIp}" -localPort = ${m.localPort} -remotePort = ${m.remotePort} +localPort = "${m.localPort}" +remotePort = "${m.remotePort}" `; break; case "http": diff --git a/src/views/proxy/index.vue b/src/views/proxy/index.vue index e16906b..0331499 100644 --- a/src/views/proxy/index.vue +++ b/src/views/proxy/index.vue @@ -94,8 +94,22 @@ const editFormRules = reactive({ trigger: "blur" } ], - localPort: [{ required: true, message: "请输入本地端口", trigger: "blur" }], - remotePort: [{ required: true, message: "请输入远程端口", trigger: "blur" }], + localPort: [ + { required: true, message: "请输入内网端口", trigger: "blur" }, + { + pattern: /^(?:\d{1,5}|\d{1,5}-\d{1,5})(?:,(?:\d{1,5}|\d{1,5}-\d{1,5}))*$/, + message: "请输入正确的端口", + trigger: "blur" + } + ], + remotePort: [ + { required: true, message: "请输入外网端口", trigger: "blur" }, + { + pattern: /^(?:\d{1,5}|\d{1,5}-\d{1,5})(?:,(?:\d{1,5}|\d{1,5}-\d{1,5}))*$/, + message: "请输入正确的端口", + trigger: "blur" + } + ], stcpModel: [{ required: true, message: "请选择stcp模式", trigger: "blur" }], secretKey: [ { required: true, message: "请输入stcp共享密钥", trigger: "blur" } @@ -209,7 +223,7 @@ const handleInitHook = () => { ipcRenderer.on("local.getLocalPorts.hook", (event, args) => { loading.value.localPorts--; localPorts.value = args.data; - console.log("本地端口", localPorts.value); + console.log("内网端口", localPorts.value); }); // ipcRenderer.on("Proxy.updateProxy.hook", (event, args) => { // loading.value.form--; @@ -518,7 +532,7 @@ onUnmounted(() => {

{{ proxy.bindPort }}

- + @@ -637,6 +651,7 @@ onUnmounted(() => { { v-model="editForm.localPort" controls-position="right" /> + { class="cursor-pointer mr-2" icon="bring-your-own-ip-rounded" /> - 本地端口 + 内网端口 @@ -662,12 +683,17 @@ onUnmounted(() => {