Add setting for HTTP User-Agent header

Replace all occurences of the User-Agent header with the user-agent
string from the settings
This commit is contained in:
0xboobface 2018-11-07 13:49:56 +01:00
parent a2f048fe0d
commit ba0cc591d3
9 changed files with 19 additions and 11 deletions

View File

@ -17,6 +17,7 @@ public class Settings {
public boolean localRecording = true;
public int httpPort = 8080;
public int httpTimeout = 10000;
public String httpUserAgent = "Mozilla/5.0 Gecko/20100101 Firefox/62.0";
public String httpServer = "localhost";
public String recordingsDir = System.getProperty("user.home") + File.separator + "ctbrec";
public String mediaPlayer = "/usr/bin/mpv";

View File

@ -69,7 +69,7 @@ public class BongaCams extends AbstractSite {
.build();
Request request = new Request.Builder()
.url(url)
.addHeader("User-Agent", "Mozilla/5.0 (Android 9.0; Mobile; rv:61.0) Gecko/61.0 Firefox/61.0")
.addHeader("User-Agent", Config.getInstance().getSettings().httpUserAgent)
.addHeader("Accept", "application/json, text/javascript, */*")
.addHeader("Accept-Language", "en")
.addHeader("Referer", BongaCams.BASE_URL)

View File

@ -15,6 +15,7 @@ import org.json.JSONObject;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import ctbrec.Config;
import ctbrec.io.HttpClient;
import javafx.application.Platform;
import okhttp3.Cookie;
@ -125,7 +126,7 @@ public class BongaCamsHttpClient extends HttpClient {
.build();
Request request = new Request.Builder()
.url(url)
.addHeader("User-Agent", "Mozilla/5.0 (Android 9.0; Mobile; rv:61.0) Gecko/61.0 Firefox/61.0")
.addHeader("User-Agent", Config.getInstance().getSettings().httpUserAgent)
.addHeader("Accept", "application/json, text/javascript, */*")
.addHeader("Accept-Language", "en")
.addHeader("Referer", BongaCams.BASE_URL)
@ -154,7 +155,7 @@ public class BongaCamsHttpClient extends HttpClient {
private String getAnyModelName() throws IOException {
Request request = new Request.Builder()
.url(BongaCams.BASE_URL + "/tools/listing_v3.php?livetab=female&online_only=true&is_mobile=true&offset=0")
.addHeader("User-Agent", "Mozilla/5.0 (Android 9.0; Mobile; rv:61.0) Gecko/61.0 Firefox/61.0")
.addHeader("User-Agent", Config.getInstance().getSettings().httpUserAgent)
.addHeader("Accept", "application/json, text/javascript, */*")
.addHeader("Accept-Language", "en")
.addHeader("Referer", BongaCams.BASE_URL)
@ -211,7 +212,7 @@ public class BongaCamsHttpClient extends HttpClient {
// Request request = new Request.Builder()
// .url(url)
// .post(body)
// .addHeader("User-Agent", "Mozilla/5.0 (Android 9.0; Mobile; rv:61.0) Gecko/61.0 Firefox/61.0")
// .addHeader("User-Agent", Config.getInstance().getSettings().httpUserAgent)
// .addHeader("Accept","application/json")
// .addHeader("Accept-Language", "en")
// .addHeader("Referer", BongaCams.BASE_URL)

View File

@ -60,6 +60,7 @@ public class BongaCamsLoginDialog {
WebView browser = new WebView();
WebEngine webEngine = browser.getEngine();
webEngine.setJavaScriptEnabled(true);
webEngine.setUserAgent(Config.getInstance().getSettings().httpUserAgent);
webEngine.locationProperty().addListener((obs, oldV, newV) -> {
try {
URL _url = new URL(newV);

View File

@ -22,6 +22,7 @@ import com.iheartradio.m3u8.data.PlaylistData;
import com.iheartradio.m3u8.data.StreamInfo;
import ctbrec.AbstractModel;
import ctbrec.Config;
import ctbrec.recorder.download.StreamSource;
import ctbrec.sites.Site;
import okhttp3.FormBody;
@ -102,7 +103,7 @@ public class BongaCamsModel extends AbstractModel {
.build();
Request request = new Request.Builder()
.url(url)
.addHeader("User-Agent", "Mozilla/5.0 (Android 9.0; Mobile; rv:61.0) Gecko/61.0 Firefox/61.0")
.addHeader("User-Agent", Config.getInstance().getSettings().httpUserAgent)
.addHeader("Accept", "application/json, text/javascript, */*")
.addHeader("Accept-Language", "en")
.addHeader("Referer", BongaCams.BASE_URL)
@ -143,7 +144,7 @@ public class BongaCamsModel extends AbstractModel {
.build();
Request request = new Request.Builder()
.url(url)
.addHeader("User-Agent", "Mozilla/5.0 (Android 9.0; Mobile; rv:61.0) Gecko/61.0 Firefox/61.0")
.addHeader("User-Agent", Config.getInstance().getSettings().httpUserAgent)
.addHeader("Accept", "application/json, text/javascript, */*")
.addHeader("Accept-Language", "en")
.addHeader("Referer", BongaCams.BASE_URL + '/' + getName())

View File

@ -9,6 +9,7 @@ import org.json.JSONObject;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import ctbrec.Config;
import ctbrec.Model;
import ctbrec.ui.PaginatedScheduledService;
import javafx.concurrent.Task;
@ -36,7 +37,7 @@ public class BongaCamsUpdateService extends PaginatedScheduledService {
LOG.debug("Fetching page {}", _url);
Request request = new Request.Builder()
.url(_url)
.addHeader("User-Agent", "Mozilla/5.0 (Android 9.0; Mobile; rv:61.0) Gecko/61.0 Firefox/61.0")
.addHeader("User-Agent", Config.getInstance().getSettings().httpUserAgent)
.addHeader("Accept", "application/json, text/javascript, */*")
.addHeader("Accept-Language", "en")
.addHeader("Referer", bongaCams.getBaseUrl())

View File

@ -60,6 +60,7 @@ public class Cam4LoginDialog {
WebView browser = new WebView();
WebEngine webEngine = browser.getEngine();
webEngine.setJavaScriptEnabled(true);
webEngine.setUserAgent(Config.getInstance().getSettings().httpUserAgent);
webEngine.locationProperty().addListener((obs, oldV, newV) -> {
try {
URL _url = new URL(newV);

View File

@ -25,6 +25,7 @@ import com.iheartradio.m3u8.data.PlaylistData;
import com.iheartradio.m3u8.data.StreamInfo;
import ctbrec.AbstractModel;
import ctbrec.Config;
import ctbrec.recorder.download.StreamSource;
import ctbrec.sites.Site;
import okhttp3.FormBody;
@ -181,7 +182,7 @@ public class CamsodaModel extends AbstractModel {
.url(url)
.post(body)
.addHeader("Referer", Camsoda.BASE_URI + '/' + getName())
.addHeader("User-Agent", "Mozilla/5.0 (X11; Linux x86_64; rv:62.0) Gecko/20100101 Firefox/62.0")
.addHeader("User-Agent", Config.getInstance().getSettings().httpUserAgent)
.addHeader("Accept", "application/json, text/plain, */*")
.addHeader("Accept-Language", "en")
.addHeader("X-CSRF-Token", csrfToken)
@ -203,7 +204,7 @@ public class CamsodaModel extends AbstractModel {
.url(url)
.post(RequestBody.create(null, ""))
.addHeader("Referer", Camsoda.BASE_URI + '/' + getName())
.addHeader("User-Agent", "Mozilla/5.0 (X11; Linux x86_64; rv:62.0) Gecko/20100101 Firefox/62.0")
.addHeader("User-Agent", Config.getInstance().getSettings().httpUserAgent)
.addHeader("Accept", "application/json, text/plain, */*")
.addHeader("Accept-Language", "en")
.addHeader("X-CSRF-Token", csrfToken)
@ -227,7 +228,7 @@ public class CamsodaModel extends AbstractModel {
.url(url)
.post(RequestBody.create(null, ""))
.addHeader("Referer", Camsoda.BASE_URI + '/' + getName())
.addHeader("User-Agent", "Mozilla/5.0 (X11; Linux x86_64; rv:62.0) Gecko/20100101 Firefox/62.0")
.addHeader("User-Agent", Config.getInstance().getSettings().httpUserAgent)
.addHeader("Accept", "application/json, text/plain, */*")
.addHeader("Accept-Language", "en")
.addHeader("X-CSRF-Token", csrfToken)

View File

@ -17,6 +17,7 @@ import com.iheartradio.m3u8.data.MasterPlaylist;
import com.iheartradio.m3u8.data.PlaylistData;
import ctbrec.AbstractModel;
import ctbrec.Config;
import ctbrec.recorder.download.StreamSource;
import ctbrec.sites.Site;
import okhttp3.Request;
@ -147,7 +148,7 @@ public class ChaturbateModel extends AbstractModel {
.header("Accept", "*/*")
.header("Accept-Language", "en-US,en;q=0.5")
.header("Referer", getUrl())
.header("User-Agent", "Mozilla/5.0 (X11; Linux x86_64; rv:59.0) Gecko/20100101 Firefox/59.0")
.header("User-Agent", Config.getInstance().getSettings().httpUserAgent)
.header("X-CSRFToken", ((ChaturbateHttpClient)site.getHttpClient()).getToken())
.header("X-Requested-With", "XMLHttpRequest")
.build();