testing this fix
This commit is contained in:
@@ -40,7 +40,7 @@ impl MissavProvider {
|
||||
// Extract needed fields from options at the start
|
||||
let language = options.language.clone().unwrap();
|
||||
let filter = options.filter.clone().unwrap();
|
||||
let requester = options.requester.clone().unwrap();
|
||||
let mut requester = options.requester.clone().unwrap();
|
||||
|
||||
let url_str = format!("{}/{}/{}?page={}&sort={}", self.url, language, filter, page, sort);
|
||||
|
||||
@@ -74,7 +74,7 @@ impl MissavProvider {
|
||||
// Extract needed fields from options at the start
|
||||
let language = options.language.clone().unwrap();
|
||||
let filter = options.filter.clone().unwrap();
|
||||
let requester = options.requester.clone().unwrap();
|
||||
let mut requester = options.requester.clone().unwrap();
|
||||
let search_string = query.replace(" ", "%20");
|
||||
let url_str = format!(
|
||||
"{}/{}/search/{}?page={}&sort={}",
|
||||
@@ -139,7 +139,7 @@ impl MissavProvider {
|
||||
return video_items;
|
||||
}
|
||||
|
||||
async fn get_video_item(&self, url_str: String, pool: DbPool, requester: Requester) -> Result<VideoItem> {
|
||||
async fn get_video_item(&self, url_str: String, pool: DbPool, mut requester: Requester) -> Result<VideoItem> {
|
||||
let mut conn = pool.get().expect("couldn't get db connection from pool");
|
||||
let db_result = db::get_video(&mut conn,url_str.clone());
|
||||
match db_result {
|
||||
|
||||
@@ -19,7 +19,7 @@ pub struct Requester {
|
||||
|
||||
impl Requester {
|
||||
pub fn new() -> Self {
|
||||
let client = Client::builder()
|
||||
let mut client = Client::builder()
|
||||
.cert_verification(false)
|
||||
.emulation(Emulation::Firefox136)
|
||||
.cookie_store(true)
|
||||
@@ -54,7 +54,7 @@ impl Requester {
|
||||
}
|
||||
}
|
||||
|
||||
pub async fn get(&self, url: &str) -> Result<String, Box<dyn std::error::Error + Send + Sync>> {
|
||||
pub async fn get(&mut self, url: &str) -> Result<String, Box<dyn std::error::Error + Send + Sync>> {
|
||||
let mut request = self.client.get(url).version(Version::HTTP_11);
|
||||
let mut proxy;
|
||||
if self.proxy {
|
||||
@@ -83,12 +83,14 @@ impl Requester {
|
||||
.await;
|
||||
match result {
|
||||
Ok(res) => {
|
||||
self.client.update()
|
||||
.headers(|headers| {
|
||||
headers.insert("Cookie", HeaderValue::from_str("").unwrap());
|
||||
})
|
||||
.apply()
|
||||
.unwrap();
|
||||
let cookie_url = url.split("/").collect::<Vec<&str>>()[..3].join("/");
|
||||
self.client = Client::builder()
|
||||
.cert_verification(false)
|
||||
.emulation(Emulation::Firefox136)
|
||||
.cookie_store(true)
|
||||
.redirect(Policy::default())
|
||||
.build()
|
||||
.expect("Failed to create HTTP client");
|
||||
let useragent = res.solution.userAgent;
|
||||
self.client.update()
|
||||
.headers(|headers| {
|
||||
@@ -99,7 +101,6 @@ impl Requester {
|
||||
for cookie in res.solution.cookies {
|
||||
let header = HeaderValue::from_str(&format!("{}={}", cookie.name, cookie.value)).unwrap();
|
||||
// Parse the domain string into a Url
|
||||
let cookie_url = url.split("/").collect::<Vec<&str>>()[..3].join("/");
|
||||
if let Ok(url) = url::Url::parse(cookie_url.as_str()) {
|
||||
self.client.set_cookie(&url, header);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user