Merge pull request #120 from jwdeveloper/develop-1.9.1

Fix clientParams and send cookies when present and not null to specific requests for 18+ livestreams.
This commit is contained in:
David Kohler
2025-02-14 19:50:34 -05:00
committed by GitHub
4 changed files with 10 additions and 3 deletions

View File

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

View File

@@ -103,6 +103,10 @@ public class HttpClient {
var requestBuilder = HttpRequest.newBuilder().GET();
requestBuilder.uri(toUri());
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.getOnRequestCreating().accept(requestBuilder);

View File

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