Support basic auth

pull/137/head
FongMi 3 years ago
parent b0548c7eca
commit 70fd6092e5
  1. 2
      app/src/main/java/com/fongmi/android/tv/player/ExoUtil.java
  2. 7
      catvod/src/main/java/com/github/catvod/net/OkHttp.java
  3. 4
      catvod/src/main/java/com/github/catvod/utils/Util.java

@ -113,7 +113,7 @@ public class ExoUtil {
private static MediaSource getSource(Map<String, String> headers, String url, String format, List<Sub> subs, Drm drm, int errorCode) {
Uri uri = Uri.parse(url.trim().replace("\\", ""));
String mimeType = getMimeType(format, errorCode);
if (uri.getUserInfo() != null) headers.put(HttpHeaders.AUTHORIZATION, "Basic " + Util.base64(uri.getUserInfo()));
if (uri.getUserInfo() != null) headers.put(HttpHeaders.AUTHORIZATION, Util.basic(uri));
return new DefaultMediaSourceFactory(getDataSourceFactory(headers), getExtractorsFactory()).createMediaSource(getMediaItem(uri, mimeType, subs, drm));
}

@ -1,9 +1,12 @@
package com.github.catvod.net;
import android.net.Uri;
import android.util.ArrayMap;
import com.github.catvod.bean.Doh;
import com.github.catvod.utils.Path;
import com.github.catvod.utils.Util;
import com.google.common.net.HttpHeaders;
import java.util.Map;
import java.util.Objects;
@ -62,7 +65,9 @@ public class OkHttp {
}
public static Call newCall(String url) {
return client().newCall(new Request.Builder().url(url).build());
Uri uri = Uri.parse(url);
if (uri.getUserInfo() != null) return newCall(url, Headers.of(HttpHeaders.AUTHORIZATION, Util.basic(uri)));
return client().newCall(new Request.Builder().url(url).headers(Headers.of()).build());
}
public static Call newCall(OkHttpClient client, String url) {

@ -65,6 +65,10 @@ public class Util {
return host == null ? "" : host.toLowerCase().trim();
}
public static String basic(Uri uri) {
return "Basic " + base64(uri.getUserInfo());
}
public static String md5(String src) {
try {
if (TextUtils.isEmpty(src)) return "";

Loading…
Cancel
Save