Bladeren bron

fix: encodeURIComponent secret

GyDi 1 jaar geleden
bovenliggende
commit
6cf174c5ed

+ 1 - 1
src/components/layout/layout-traffic.tsx

@@ -46,7 +46,7 @@ const LayoutTraffic = () => {
       if (document.visibilityState === "visible") {
         // reconnect websocket
         const { server = "", secret = "" } = clashInfo;
-        connect(`ws://${server}/traffic?token=${secret}`);
+        connect(`ws://${server}/traffic?token=${encodeURIComponent(secret)}`);
       } else {
         disconnect();
       }

+ 4 - 1
src/components/setting/mods/web-ui-viewer.tsx

@@ -60,7 +60,10 @@ export const WebUIViewer = forwardRef<DialogRef>((props, ref) => {
           .trim();
 
         url = url.replaceAll("%port", port || "9090");
-        url = url.replaceAll("%secret", clashInfo.secret || "");
+        url = url.replaceAll(
+          "%secret",
+          encodeURIComponent(clashInfo.secret || "")
+        );
       }
 
       await openWebUrl(url);

+ 1 - 1
src/pages/connections.tsx

@@ -96,7 +96,7 @@ const ConnectionsPage = () => {
     if (!clashInfo) return;
 
     const { server = "", secret = "" } = clashInfo;
-    connect(`ws://${server}/connections?token=${secret}`);
+    connect(`ws://${server}/connections?token=${encodeURIComponent(secret)}`);
 
     return () => {
       disconnect();