diff --git a/crates/bili_sync/src/bilibili/credential.rs b/crates/bili_sync/src/bilibili/credential.rs index 29235e2..6a139a8 100644 --- a/crates/bili_sync/src/bilibili/credential.rs +++ b/crates/bili_sync/src/bilibili/credential.rs @@ -75,9 +75,17 @@ impl Credential { pub async fn refresh(&self, client: &Client) -> Result { let correspond_path = Self::get_correspond_path(); - let csrf = self.get_refresh_csrf(client, correspond_path).await?; - let new_credential = self.get_new_credential(client, &csrf).await?; - self.confirm_refresh(client, &new_credential).await?; + let csrf = self + .get_refresh_csrf(client, correspond_path) + .await + .context("获取 refresh_csrf 失败")?; + let new_credential = self + .get_new_credential(client, &csrf) + .await + .context("刷新 Credential 失败")?; + self.confirm_refresh(client, &new_credential) + .await + .context("确认更新 Credential 失败")?; Ok(new_credential) } diff --git a/crates/bili_sync/src/task/video_downloader.rs b/crates/bili_sync/src/task/video_downloader.rs index de71a7e..d7c5e90 100644 --- a/crates/bili_sync/src/task/video_downloader.rs +++ b/crates/bili_sync/src/task/video_downloader.rs @@ -309,15 +309,21 @@ async fn check_and_refresh_credential( bili_client: &BiliClient, config: &Config, ) -> Result<()> { - if let Some(new_credential) = bili_client + match bili_client .check_refresh(&config.credential) .await .context("检查刷新 Credential 失败")? { - VersionedConfig::get() - .update_credential(new_credential, connection) - .await - .context("更新 Credential 失败")?; + None => { + info!("Credential 无需刷新"); + } + Some(new_credential) => { + VersionedConfig::get() + .update_credential(new_credential, connection) + .await + .context("新 Credential 持久化失败")?; + info!("Credential 已刷新并保存"); + } } Ok(()) }