|
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'; |
@@ -5997,7 +5997,7 @@ async function 反代参数获取(url, uuid, 默认反代IP = '', 默认反代 |
5997 | 5997 | const 链式代理路径匹配 = pathname.match(/\/video\/(.+)$/i); |
5998 | 5998 | if (链式代理路径匹配) { |
5999 | 5999 | try { |
6000 | | - const 链式代理明文 = base64SecretDecode(链式代理路径匹配[1], uuid); |
| 6000 | + const 链式代理明文 = base64SecretDecode(链式代理路径匹配[1].replace(/\/+$/, ''), uuid); |
6001 | 6001 | const { type, ...链式代理地址 } = JSON.parse(链式代理明文); |
6002 | 6002 | if (!type || !反代协议默认端口[String(type).toLowerCase()]) throw new Error('链式代理类型无效'); |
6003 | 6003 | if (!链式代理地址.hostname || !链式代理地址.port) throw new Error('链式代理地址缺少 hostname 或 port'); |
@@ -6057,7 +6057,7 @@ async function 反代参数获取(url, uuid, 默认反代IP = '', 默认反代 |
6057 | 6057 | const 木马路径匹配 = /\/trojan=([^?#\s]+)/i.exec(pathname); |
6058 | 6058 | if (木马路径匹配) { |
6059 | 6059 | try { |
6060 | | - 反代上下文.木马反代地址 = 解析木马反代地址(木马路径匹配[1]); |
| 6060 | + 反代上下文.木马反代地址 = 解析木马反代地址(木马路径匹配[1].replace(/\/+$/, '')); |
6061 | 6061 | } catch (err) { |
6062 | 6062 | console.error('解析木马反代地址失败:', err.message); |
6063 | 6063 | 反代上下文.木马反代地址 = null; |
|
0 commit comments