使用系统代理的选项开启后无法关闭
Closed this issue · 7 comments
Deleted user commented
Deleted user commented
FixProtocolVersion.load 没有出现这样的问题,暂时使用的 FixProtocolVersion.load
cssxsh commented
cssxsh commented
- System.setProperty("java.net.useSystemProxies", system) 无效
- 你的系统代理有问题
加在一起炸掉了mirai 的上传请求
cssxsh commented
另外 FixProtocolVersion.sync 会直接同步从 https://github.com/RomiChan/protocol-versions 得到的最新版协议
而签名服务和协议版本要相互匹配,一旦协议变更,坐等 code=45
Deleted user commented
代理似乎没有问题,我测试了如下代码:
String systemProxy = System.getProperty("java.net.useSystemProxies", "false");
Proxy proxy;
try {
System.setProperty("java.net.useSystemProxies", "true");
List<Proxy> proxyList = ProxySelector.getDefault().select(new URI("https://www.google.com/"));
proxy = proxyList.size() > 0 ? proxyList.get(0) : Proxy.NO_PROXY;
} catch (URISyntaxException e) {
proxy = Proxy.NO_PROXY;
e.printStackTrace();
} finally {
System.setProperty("java.net.useSystemProxies", systemProxy);
}
sj.add("proxy = " + proxy.toString());
sj.add("systemProxies = " + systemProxy);
打印输出结果:
proxy = HTTP @ 127.0.0.1:10809
systemProxies = false
Deleted user commented
我的代理使用的是 v2rayN 的 自动配置系统代理 和 自定义路由规则
Deleted user commented
问个题外话:sync 可不可以改成 FixProtocolVersion 优先从 KFCFactory.json 配置了签名服务器的版本中 匹配 协议.json 文件?
如果 KFCFactory.json 如果启用了 KFCFactory.install() 并且没有找到对应的 协议.json 文件则抛出异常,从而避免 协议变更,坐等 code=45。如果匹配到的 协议.json 不是最新的则提示 从当前协议到最新支持的所有协议的版本