|
1 | | -const Version = '2026-08-09 20:11:58'; |
| 1 | +const Version = '2026-08-09 23:10:57'; |
2 | 2 | let config_JSON, 缓存SOCKS5白名单 = null, 调试日志打印 = false; |
3 | 3 | let SOCKS5白名单 = ['*tapecontent.net', '*cloudatacdn.com', '*loadshare.org', '*cdn-centaurus.com', 'scholar.google.com']; |
4 | 4 | const Pages静态页面 = 'https://edt-pages.github.io'; |
@@ -5994,7 +5994,7 @@ async function 反代参数获取(url, uuid, 默认反代IP = '', 默认反代 |
5994 | 5994 | const 链式代理路径匹配 = pathname.match(/\/video\/(.+)$/i); |
5995 | 5995 | if (链式代理路径匹配) { |
5996 | 5996 | try { |
5997 | | - const 链式代理明文 = base64SecretDecode(链式代理路径匹配[1], uuid); |
| 5997 | + const 链式代理明文 = base64SecretDecode(链式代理路径匹配[1].replace(/\/+$/, ''), uuid); |
5998 | 5998 | const { type, ...链式代理地址 } = JSON.parse(链式代理明文); |
5999 | 5999 | if (!type || !反代协议默认端口[String(type).toLowerCase()]) throw new Error('链式代理类型无效'); |
6000 | 6000 | if (!链式代理地址.hostname || !链式代理地址.port) throw new Error('链式代理地址缺少 hostname 或 port'); |
@@ -6054,7 +6054,7 @@ async function 反代参数获取(url, uuid, 默认反代IP = '', 默认反代 |
6054 | 6054 | const 木马路径匹配 = /\/trojan=([^?#\s]+)/i.exec(pathname); |
6055 | 6055 | if (木马路径匹配) { |
6056 | 6056 | try { |
6057 | | - 反代上下文.木马反代地址 = 解析木马反代地址(木马路径匹配[1]); |
| 6057 | + 反代上下文.木马反代地址 = 解析木马反代地址(木马路径匹配[1].replace(/\/+$/, '')); |
6058 | 6058 | } catch (err) { |
6059 | 6059 | console.error('解析木马反代地址失败:', err.message); |
6060 | 6060 | 反代上下文.木马反代地址 = null; |
|
0 commit comments