diff --git a/catvod/src/main/java/com/github/catvod/net/OkHttp.java b/catvod/src/main/java/com/github/catvod/net/OkHttp.java index 18042d6fa..d3ee01e0a 100644 --- a/catvod/src/main/java/com/github/catvod/net/OkHttp.java +++ b/catvod/src/main/java/com/github/catvod/net/OkHttp.java @@ -32,6 +32,7 @@ public class OkHttp { private static final int CACHE = 100 * 1024 * 1024; private static final ProxySelector defaultSelector; + private boolean proxy; private DnsOverHttps dns; private OkHttpClient client; private OkProxySelector selector; @@ -61,6 +62,7 @@ public class OkHttp { public void setProxy(String proxy) { ProxySelector.setDefault(TextUtils.isEmpty(proxy) ? defaultSelector : selector()); if (!TextUtils.isEmpty(proxy)) selector().setProxy(proxy); + this.proxy = !TextUtils.isEmpty(proxy); client = null; } @@ -140,7 +142,7 @@ public class OkHttp { private static OkHttpClient.Builder getBuilder() { OkHttpClient.Builder builder = new OkHttpClient.Builder().addInterceptor(new OkhttpInterceptor()).connectTimeout(TIMEOUT, TimeUnit.MILLISECONDS).readTimeout(TIMEOUT, TimeUnit.MILLISECONDS).writeTimeout(TIMEOUT, TimeUnit.MILLISECONDS).dns(dns()).hostnameVerifier((hostname, session) -> true).sslSocketFactory(new SSLCompat(), SSLCompat.TM); - builder.proxySelector(ProxySelector.getDefault()); + builder.proxySelector(get().proxy ? selector() : defaultSelector); return builder; } } diff --git a/catvod/src/main/java/com/github/catvod/net/OkProxySelector.java b/catvod/src/main/java/com/github/catvod/net/OkProxySelector.java index 2269ae1e6..66e63606c 100644 --- a/catvod/src/main/java/com/github/catvod/net/OkProxySelector.java +++ b/catvod/src/main/java/com/github/catvod/net/OkProxySelector.java @@ -9,12 +9,13 @@ import java.net.Authenticator; import java.net.InetSocketAddress; import java.net.PasswordAuthentication; import java.net.Proxy; +import java.net.ProxySelector; import java.net.SocketAddress; import java.net.URI; import java.util.Collections; import java.util.List; -public class OkProxySelector extends java.net.ProxySelector { +public class OkProxySelector extends ProxySelector { private List hosts; private Proxy proxy; diff --git a/quickjs/src/main/java/com/fongmi/quickjs/utils/Connect.java b/quickjs/src/main/java/com/fongmi/quickjs/utils/Connect.java index 09cf21c35..2c476501d 100644 --- a/quickjs/src/main/java/com/fongmi/quickjs/utils/Connect.java +++ b/quickjs/src/main/java/com/fongmi/quickjs/utils/Connect.java @@ -34,6 +34,7 @@ public class Connect { JSObject jsObject = ctx.createNewJSObject(); JSObject jsHeader = ctx.createNewJSObject(); setHeader(ctx, res, jsHeader); + jsObject.setProperty("code", res.code()); jsObject.setProperty("headers", jsHeader); if (req.getBuffer() == 0) jsObject.setProperty("content", new String(res.body().bytes(), req.getCharset())); if (req.getBuffer() == 1) jsObject.setProperty("content", JSUtil.toArray(ctx, res.body().bytes())); @@ -49,6 +50,7 @@ public class Connect { JSObject jsHeader = ctx.createNewJSObject(); jsObject.setProperty("headers", jsHeader); jsObject.setProperty("content", ""); + jsObject.setProperty("code", ""); return jsObject; }