diff --git a/backend/package.json b/backend/package.json index a7e5bf2..88225d0 100644 --- a/backend/package.json +++ b/backend/package.json @@ -1,6 +1,6 @@ { "name": "sub-store", - "version": "2.14.320", + "version": "2.14.321", "description": "Advanced Subscription Manager for QX, Loon, Surge, Stash and ShadowRocket.", "main": "src/main.js", "scripts": { diff --git a/backend/src/core/proxy-utils/index.js b/backend/src/core/proxy-utils/index.js index 4180273..eac7ae6 100644 --- a/backend/src/core/proxy-utils/index.js +++ b/backend/src/core/proxy-utils/index.js @@ -199,6 +199,10 @@ function produce(proxies, targetPlatform, type, opts = {}) { ); proxies = proxies.map((proxy) => { + proxy._subName = proxy.subName; + proxy._collectionName = proxy.collectionName; + proxy._resolved = proxy.resolved; + if (!isNotBlank(proxy.name)) { proxy.name = `${proxy.type} ${proxy.server}:${proxy.port}`; } diff --git a/backend/src/utils/geo.js b/backend/src/utils/geo.js index 29b222c..71ad888 100644 --- a/backend/src/utils/geo.js +++ b/backend/src/utils/geo.js @@ -438,11 +438,21 @@ export class MMDB { const countryFile = country || eval('process.env.SUB_STORE_MMDB_COUNTRY_PATH'); const asnFile = asn || eval('process.env.SUB_STORE_MMDB_ASN_PATH'); + // $.info( + // `GeoLite2 Country MMDB: ${countryFile}, exists: ${fs.existsSync( + // countryFile, + // )}`, + // ); if (countryFile) { this.countryReader = Reader.openBuffer( fs.readFileSync(countryFile), ); } + // $.info( + // `GeoLite2 ASN MMDB: ${asnFile}, exists: ${fs.existsSync( + // asnFile, + // )}`, + // ); if (asnFile) { if (!fs.existsSync(asnFile)) throw new Error('GeoLite2 ASN MMDB does not exist'); diff --git a/scripts/demo.js b/scripts/demo.js index 508b7f6..92b879b 100644 --- a/scripts/demo.js +++ b/scripts/demo.js @@ -8,9 +8,11 @@ function operator(proxies = [], targetPlatform, context) { // 结构大致参考了 Clash.Meta(mihomo) 有私货 // 可在预览界面点击节点查看 JSON 结构 或查看 `target=JSON` 的通用订阅 // 1. `no-resolve` 为不解析域名 - // 2. 域名解析后 会多一个 `resolved` 字段 + // 2. 域名解析后 会多一个 `_resolved` 字段 // 3. 域名解析后会有`_IPv4`, `_IPv6`, `_IP`(若有多个步骤, 只取第一次成功的 v4 或 v6 数据), `_domain` 字段 // 4. 节点字段 `exec` 为 `ssr-local` 路径, 默认 `/usr/local/bin/ssr-local`; 端口从 10000 开始递增(暂不支持配置) + // 5. `_subName` 为单条订阅名 + // 6. `_collectionName` 为组合订阅名 // $arguments 为传入的脚本参数