From 37913a19af0bddd08cddacddc9c2bed40d9071a9 Mon Sep 17 00:00:00 2001 From: FongMi Date: Wed, 18 Oct 2023 22:49:09 +0800 Subject: [PATCH] hack gitcode --- .../java/com/github/catvod/net/OkhttpInterceptor.java | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/catvod/src/main/java/com/github/catvod/net/OkhttpInterceptor.java b/catvod/src/main/java/com/github/catvod/net/OkhttpInterceptor.java index 635ad9284..70bb4a8f9 100644 --- a/catvod/src/main/java/com/github/catvod/net/OkhttpInterceptor.java +++ b/catvod/src/main/java/com/github/catvod/net/OkhttpInterceptor.java @@ -11,6 +11,7 @@ import java.util.zip.InflaterInputStream; import okhttp3.Interceptor; import okhttp3.MediaType; +import okhttp3.Request; import okhttp3.Response; import okhttp3.ResponseBody; import okio.BufferedSource; @@ -18,10 +19,12 @@ import okio.Okio; public class OkhttpInterceptor implements Interceptor { + public static final String CHROME = "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/116.0.0.0 Safari/537.36"; + @NonNull @Override public Response intercept(@NonNull Chain chain) throws IOException { - Response response = chain.proceed(chain.request()); + Response response = chain.proceed(getRequest(chain)); String encoding = response.header(HttpHeaders.CONTENT_ENCODING); if (response.body() == null || encoding == null || !encoding.equals("deflate")) return response; InflaterInputStream is = new InflaterInputStream(response.body().byteStream(), new Inflater(true)); @@ -44,4 +47,10 @@ public class OkhttpInterceptor implements Interceptor { } }).build(); } + + private Request getRequest(@NonNull Chain chain) { + Request original = chain.request(); + if (original.url().host().equals("gitcode.net")) return original.newBuilder().addHeader(HttpHeaders.USER_AGENT, CHROME).build(); + return original; + } }