From 2ef18ee5c8928cbc020659645306f8059fd6cf6a Mon Sep 17 00:00:00 2001 From: amtoaer Date: Thu, 11 Apr 2024 21:56:42 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E5=A4=8D=E7=94=A8=20client=20=E5=8D=95?= =?UTF-8?q?=E4=BE=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/bilibili/client.rs | 3 ++- src/core/command.rs | 2 +- src/downloader.rs | 6 ------ 3 files changed, 3 insertions(+), 8 deletions(-) diff --git a/src/bilibili/client.rs b/src/bilibili/client.rs index 954ad45..cb80152 100644 --- a/src/bilibili/client.rs +++ b/src/bilibili/client.rs @@ -7,6 +7,7 @@ use crate::bilibili::Credential; use crate::config::CONFIG; // 一个对 reqwest::Client 的简单封装,用于 Bilibili 请求 +#[derive(Clone)] pub struct Client(reqwest::Client); impl Client { @@ -56,7 +57,7 @@ impl Default for Client { } pub struct BiliClient { - client: Client, + pub client: Client, } impl BiliClient { diff --git a/src/core/command.rs b/src/core/command.rs index c39e946..a7de541 100644 --- a/src/core/command.rs +++ b/src/core/command.rs @@ -153,7 +153,7 @@ pub async fn download_unprocessed_videos( let unhandled_videos_pages = unhandled_videos_pages(&favorite_model, connection).await?; // 对于视频,允许五个同时下载(视频内还有分页、不同分页还有多种下载任务) let semaphore = Semaphore::new(5); - let downloader = Downloader::default(); + let downloader = Downloader::new(bili_client.client.clone()); let mut uppers_mutex: HashMap, Mutex<()>)> = HashMap::new(); for (video_model, _) in &unhandled_videos_pages { uppers_mutex.insert(video_model.upper_id, (Mutex::new(()), Mutex::new(()))); diff --git a/src/downloader.rs b/src/downloader.rs index 6622be2..5632265 100644 --- a/src/downloader.rs +++ b/src/downloader.rs @@ -55,9 +55,3 @@ impl Downloader { Ok(()) } } - -impl Default for Downloader { - fn default() -> Self { - Self::new(Client::new()) - } -}