subconverter icon indicating copy to clipboard operation
subconverter copied to clipboard

0.9.0版本的clash订阅链接转换出现400错误

Open hudingwen opened this issue 3 months ago • 6 comments

确认版本最新

  • [X] 我已经确认在最新Action编译的版本中复现

检索issue

  • [X] 我已经确认之前没有issue涉及此BUG

subconverter版本

0.9.0

转换过程

https://转换地址/sub?target=clash&insert=false&url=普通订阅链接

转换设置

普通订阅链接的内容每行都是节点,然后整体返回base64编码到sub进行转换

复现步骤

0.8.1同样链接不会出现400的http代码

期望结果

dns: enable: true ipv6: true enhanced-mode: fake-ip fake-ip-filter: - ".lan" - ".cn" - "*.qq.com" default-nameserver: - 1.1.1.1 - 8.8.8.8 - 223.5.5.5 - 114.114.114.114 nameserver: - https://doh.pub/dns-query - https://dns.alidns.com/dns-query - https://doh.360.cn/dns-query - 114.114.114.114 - 223.5.5.5 fallback: - https://cloudflare-dns.com/dns-query - https://dns.google/dns-query fallback-filter: geoip: true geoip-code: CN geosite: - gfw ipcidr: - 240.0.0.0/4 domain: - +.google.com - +.facebook.com - +.youtube.com proxies: 节点列表........

实际结果

400

错误信息

400网页代码错误

hudingwen avatar Apr 08 '24 13:04 hudingwen

不是 clash 订阅的问题,我转换成其他格式也是报 400,感觉是发行版的问题。我是用的 docker 部署,镜像是 tindy2013/subconverter

不知道是不是这个版本加了什么新的请求参数没填导致的。

leic4u avatar Apr 08 '24 14:04 leic4u

请确认链接中的 url 是否已通过 URL Encode 处理,从该版本开始若请求 path 中带有多个 ? 时,新的 HTTP 服务器将提示错误

tindy2013 avatar Apr 08 '24 17:04 tindy2013

感觉可以做一下兼容处理呢 下发的地址都是这样的,普通订阅链接中只有一个? https://转换地址/sub?target=clash&insert=false&url=https://普通订阅地址/api/clash?id=123123

hudingwen avatar Apr 09 '24 02:04 hudingwen

破案了,URL Encode 之后可以正常转换了。

leic4u avatar Apr 09 '24 02:04 leic4u

主要是下发给用户的地址不好通知挨个修改 不然一旦更新最新版本他们就拉去不到最新的了 9BEA0E5A

hudingwen avatar Apr 11 '24 07:04 hudingwen

image 应该是改这儿吧 只是C++有点看不懂 9BF853FA

hudingwen avatar Apr 11 '24 08:04 hudingwen