mirror of
https://git.mirrors.martin98.com/https://github.com/sub-store-org/Sub-Store.git
synced 2025-08-18 04:36:00 +08:00
feat: 输出到 Clash/Stash/Shadowrocket 时, 会过滤掉配置了前置代理的节点, 并提示使用对应的功能
This commit is contained in:
parent
4c4bda563a
commit
da9b1d8795
@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "sub-store",
|
"name": "sub-store",
|
||||||
"version": "2.19.32",
|
"version": "2.19.33",
|
||||||
"description": "Advanced Subscription Manager for QX, Loon, Surge, Stash and Shadowrocket.",
|
"description": "Advanced Subscription Manager for QX, Loon, Surge, Stash and Shadowrocket.",
|
||||||
"main": "src/main.js",
|
"main": "src/main.js",
|
||||||
"scripts": {
|
"scripts": {
|
||||||
|
@ -1,4 +1,5 @@
|
|||||||
import { isPresent } from '@/core/proxy-utils/producers/utils';
|
import { isPresent } from '@/core/proxy-utils/producers/utils';
|
||||||
|
import $ from '@/core/app';
|
||||||
|
|
||||||
export default function Clash_Producer() {
|
export default function Clash_Producer() {
|
||||||
const type = 'ALL';
|
const type = 'ALL';
|
||||||
@ -46,6 +47,11 @@ export default function Clash_Producer() {
|
|||||||
proxy['reality-opts']))
|
proxy['reality-opts']))
|
||||||
) {
|
) {
|
||||||
return false;
|
return false;
|
||||||
|
} else if (proxy['underlying-proxy'] || proxy['dialer-proxy']) {
|
||||||
|
$.error(
|
||||||
|
`Clash 不支持前置代理字段. 已过滤节点 ${proxy.name}`,
|
||||||
|
);
|
||||||
|
return false;
|
||||||
}
|
}
|
||||||
return true;
|
return true;
|
||||||
})
|
})
|
||||||
@ -152,11 +158,6 @@ export default function Clash_Producer() {
|
|||||||
}
|
}
|
||||||
delete proxy['tls-fingerprint'];
|
delete proxy['tls-fingerprint'];
|
||||||
|
|
||||||
if (proxy['underlying-proxy']) {
|
|
||||||
proxy['dialer-proxy'] = proxy['underlying-proxy'];
|
|
||||||
}
|
|
||||||
delete proxy['underlying-proxy'];
|
|
||||||
|
|
||||||
if (isPresent(proxy, 'tls') && typeof proxy.tls !== 'boolean') {
|
if (isPresent(proxy, 'tls') && typeof proxy.tls !== 'boolean') {
|
||||||
delete proxy.tls;
|
delete proxy.tls;
|
||||||
}
|
}
|
||||||
|
@ -1,4 +1,5 @@
|
|||||||
import { isPresent } from '@/core/proxy-utils/producers/utils';
|
import { isPresent } from '@/core/proxy-utils/producers/utils';
|
||||||
|
import $ from '@/core/app';
|
||||||
|
|
||||||
export default function Shadowrocket_Producer() {
|
export default function Shadowrocket_Producer() {
|
||||||
const type = 'ALL';
|
const type = 'ALL';
|
||||||
@ -10,6 +11,11 @@ export default function Shadowrocket_Producer() {
|
|||||||
return false;
|
return false;
|
||||||
} else if (['mieru', 'anytls'].includes(proxy.type)) {
|
} else if (['mieru', 'anytls'].includes(proxy.type)) {
|
||||||
return false;
|
return false;
|
||||||
|
} else if (proxy['underlying-proxy'] || proxy['dialer-proxy']) {
|
||||||
|
$.error(
|
||||||
|
`Shadowrocket 不支持前置代理字段. 已过滤节点 ${proxy.name}. 请使用 App 内的 "代理通过" 功能`,
|
||||||
|
);
|
||||||
|
return false;
|
||||||
}
|
}
|
||||||
return true;
|
return true;
|
||||||
})
|
})
|
||||||
|
@ -17,6 +17,7 @@ function operator(proxies = [], targetPlatform, context) {
|
|||||||
// 只给 mihomo 输出的话, `dialer-proxy` 也行
|
// 只给 mihomo 输出的话, `dialer-proxy` 也行
|
||||||
// 只给 sing-box 输出的话, `detour` 也行
|
// 只给 sing-box 输出的话, `detour` 也行
|
||||||
// 只给 egern 输出的话, `prev_hop` 也行
|
// 只给 egern 输出的话, `prev_hop` 也行
|
||||||
|
// 输出到 Clash/Stash/Shadowrocket 时, 会过滤掉配置了前置代理的节点, 并提示使用对应的功能.
|
||||||
// 9. `trojan`, `tuic`, `hysteria`, `hysteria2`, `juicity` 会在解析时设置 `tls`: true (会使用 tls 类协议的通用逻辑), 输出时删除
|
// 9. `trojan`, `tuic`, `hysteria`, `hysteria2`, `juicity` 会在解析时设置 `tls`: true (会使用 tls 类协议的通用逻辑), 输出时删除
|
||||||
// 10. `sni` 在某些协议里会自动与 `servername` 转换
|
// 10. `sni` 在某些协议里会自动与 `servername` 转换
|
||||||
// 11. 读取节点的 ca-str 和 _ca (后端文件路径) 字段, 自动计算 fingerprint (参考 https://t.me/zhetengsha/1512)
|
// 11. 读取节点的 ca-str 和 _ca (后端文件路径) 字段, 自动计算 fingerprint (参考 https://t.me/zhetengsha/1512)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user