pull/590/head
FongMi 9 months ago
parent a75a2457dc
commit ce0ab922b3
  1. 7
      catvod/src/main/java/com/github/catvod/net/OkCookieJar.java
  2. 9
      catvod/src/main/java/com/github/catvod/net/interceptor/RequestInterceptor.java

@ -6,6 +6,8 @@ import android.webkit.WebView;
import androidx.annotation.NonNull;
import com.google.common.net.HttpHeaders;
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
@ -13,6 +15,7 @@ import java.util.List;
import okhttp3.Cookie;
import okhttp3.CookieJar;
import okhttp3.HttpUrl;
import okhttp3.Request;
public class OkCookieJar implements CookieJar {
@ -40,6 +43,10 @@ public class OkCookieJar implements CookieJar {
}
}
public static void sync(HttpUrl url, Request request) {
if (!"127.0.0.1".equals(url.host())) sync(url.toString(), request.header(HttpHeaders.COOKIE));
}
public static void sync(String url, String cookie) {
try {
if (TextUtils.isEmpty(cookie)) return;

@ -4,7 +4,6 @@ import androidx.annotation.NonNull;
import com.github.catvod.net.OkCookieJar;
import com.github.catvod.utils.Json;
import com.google.common.net.HttpHeaders;
import com.google.gson.JsonElement;
import com.google.gson.JsonObject;
@ -44,11 +43,11 @@ public class RequestInterceptor implements Interceptor {
@Override
public Response intercept(@NonNull Chain chain) throws IOException {
Request request = chain.request();
HttpUrl url = request.url();
Request.Builder builder = request.newBuilder();
HttpUrl url = request.url();
checkAuth(url, builder);
checkHeader(url, builder);
checkAuthUser(url, builder);
OkCookieJar.sync(url.toString(), request.header(HttpHeaders.COOKIE));
OkCookieJar.sync(url, request);
return chain.proceed(builder.build());
}
@ -59,7 +58,7 @@ public class RequestInterceptor implements Interceptor {
}
}
private void checkAuthUser(HttpUrl url, Request.Builder builder) {
private void checkAuth(HttpUrl url, Request.Builder builder) {
String auth = url.queryParameter("auth");
if (auth != null) authMap.put(url.host(), auth);
if (authMap.containsKey(url.host()) && auth == null) builder.url(url.newBuilder().addQueryParameter("auth", authMap.get(url.host())).build());

Loading…
Cancel
Save