Fix clientParams and send cookies when present and not null to specific requests for 18+ livestreams.

This commit is contained in:
kohlerpop1
2025-02-14 19:44:32 -05:00
parent 64b2e74d2b
commit 65a651d4b8
4 changed files with 10 additions and 3 deletions

View File

@@ -153,8 +153,8 @@ public class LiveClientSettings {
clientParams.put("screen_height", 1152); clientParams.put("screen_height", 1152);
clientParams.put("screen_width", 2048); clientParams.put("screen_width", 2048);
clientParams.put("tz_name", "Europe/Berlin"); clientParams.put("tz_name", "Europe/Berlin");
clientParams.put("referer", "https, //www.tiktok.com/"); clientParams.put("referer", "https://www.tiktok.com/");
clientParams.put("root_referer", "https, //www.tiktok.com/"); clientParams.put("root_referer", "https://www.tiktok.com/");
clientParams.put("msToken", ""); clientParams.put("msToken", "");
clientParams.put("version_code", 180800); clientParams.put("version_code", 180800);
clientParams.put("webcast_sdk_version", "1.3.0"); clientParams.put("webcast_sdk_version", "1.3.0");

View File

@@ -112,6 +112,7 @@ public class TikTokLiveHttpClient implements LiveHttpClient
var result = httpFactory.client(url) var result = httpFactory.client(url)
.withParam("uniqueId", request.getUserName()) .withParam("uniqueId", request.getUserName())
.withParam("sourceType", "54") //MAGIC NUMBER, WHAT 54 means? .withParam("sourceType", "54") //MAGIC NUMBER, WHAT 54 means?
.withCookie("sessionid", clientSettings.getSessionId())
.build() .build()
.toJsonResponse(); .toJsonResponse();
@@ -139,6 +140,7 @@ public class TikTokLiveHttpClient implements LiveHttpClient
var url = TIKTOK_URL_WEBCAST + "room/info"; var url = TIKTOK_URL_WEBCAST + "room/info";
var result = httpFactory.client(url) var result = httpFactory.client(url)
.withParam("room_id", request.getRoomId()) .withParam("room_id", request.getRoomId())
.withCookie("sessionid", clientSettings.getSessionId())
.build() .build()
.toJsonResponse(); .toJsonResponse();

View File

@@ -103,6 +103,10 @@ public class HttpClient {
var requestBuilder = HttpRequest.newBuilder().GET(); var requestBuilder = HttpRequest.newBuilder().GET();
requestBuilder.uri(toUri()); requestBuilder.uri(toUri());
requestBuilder.timeout(httpClientSettings.getTimeout()); requestBuilder.timeout(httpClientSettings.getTimeout());
if (!httpClientSettings.getCookies().isEmpty()) {
String cookieString = httpClientSettings.getCookies().entrySet().stream().map(e -> e.getKey()+"="+e.getValue()).collect(Collectors.joining("; "));
httpClientSettings.getHeaders().put("Cookie", cookieString);
}
httpClientSettings.getHeaders().forEach(requestBuilder::setHeader); httpClientSettings.getHeaders().forEach(requestBuilder::setHeader);
httpClientSettings.getOnRequestCreating().accept(requestBuilder); httpClientSettings.getOnRequestCreating().accept(requestBuilder);

View File

@@ -53,6 +53,7 @@ public class HttpClientBuilder {
} }
public HttpClientBuilder withCookie(String name, String value) { public HttpClientBuilder withCookie(String name, String value) {
if (name != null && value != null)
httpClientSettings.getCookies().put(name, value); httpClientSettings.getCookies().put(name, value);
return this; return this;
} }