Переглянути джерело

luci-app-ssr-plus: Optimize the import.

zxl hhyccc 2 тижнів тому
батько
коміт
2bfc32a6a4

+ 4 - 4
luci-app-ssr-plus/luasrc/view/shadowsocksr/ssrurl.htm

@@ -94,13 +94,13 @@ function import_ssr_url(btn, urlname, sid) {
 		}
 		s.innerHTML = "";
 		//var ssu = ssrurl.match(/ssr:\/\/([A-Za-z0-9_-]+)/i);
+		ssrurl = ssrurl.replace(/&([a-zA-Z]+);/g, '&').replace(/\s*#\s*/, '#').trim();  //一些奇葩的链接用"&"当做"&","#"前后带空格
 		var ssu = ssrurl.split('://');
 		//console.log(ssu.length);
 		if (ssu[0] === "ss") {
 		    var queryStr = "";
 			if (ssu[1].indexOf("?") > -1) {
 			    queryStr = ssu[1].split("?")[1]; // 提取 ? 后面的参数
-				queryStr = queryStr.replace(/&([a-zA-Z]+);/g, '&'); // 转义 & 为 &
 			}
 			var params = new URLSearchParams(queryStr);
 			if (params.get("type")) {
@@ -177,7 +177,7 @@ function import_ssr_url(btn, urlname, sid) {
 			s.innerHTML = "<font style=\'color:green\'><%:Import configuration information successfully.%></font>";
 			return false;
 		case "ss":
-			var url0 = ((ssu[1] || "").replace(/&([a-zA-Z]+);/g, '&').replace(/\s*#\s*/, '#').trim());
+			var url0 = (ssu[1] || "");
 			var param = "";
 
 			// 先分离 #(alias)
@@ -667,7 +667,7 @@ function import_ssr_url(btn, urlname, sid) {
 		case "shadowsocks":
 			try {
 				// 处理完整 ss:// 链接
-				var urlinfo = ssu[1].replace(/&([a-zA-Z]+);/g, '&').replace(/\s*#\s*/, '#').trim();
+				var urlinfo = ssu[1];
 				// 拆分 @,判断是否是 base64 userinfo 的格式
 				var parts = urlinfo.split("@");
 				if (parts.length > 1) {
@@ -676,7 +676,7 @@ function import_ssr_url(btn, urlname, sid) {
 					var sepIndex = userinfo.indexOf(":");
 					if (sepIndex > -1) {
 						method = userinfo.slice(0, sepIndex);
-						password = userinfo.slice(sepIndex + 1); 
+						password = userinfo.slice(sepIndex + 1);  //一些链接用明文uuid做密码
 					}
 				}
 				var url = new URL("http://" + urlinfo);