Merge pull request #64 from x1ao4/dev

修复后端在定时运行任务时将可恢复性网络错误误判为资源失效的问题
This commit is contained in:
x1ao4 2025-09-18 01:24:19 +08:00 committed by GitHub
commit bd5cab85fd
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
2 changed files with 21 additions and 3 deletions

View File

@ -101,7 +101,7 @@ body.login-page {
/* --------------- Toast 通知组件 --------------- */
.toast-container-center {
position: fixed;
top: 91.5px;
top: 90.5px;
left: 50%;
transform: translate(-50%, -50%);
z-index: 9999;
@ -122,7 +122,7 @@ body.login-page {
.toast-body-custom {
text-align: center;
padding: 1rem 1.2rem;
padding: 0.93rem 1.2rem;
color: #fff;
font-size: 0.95rem;
white-space: nowrap;

View File

@ -2066,11 +2066,29 @@ class Quark:
# 获取分享详情
is_sharing, stoken = self.get_stoken(pwd_id, passcode)
if not is_sharing:
# 如果是可恢复错误(网络/临时),不要设置为失效资源
try:
error_text = str(stoken or "")
if self.is_recoverable_error(error_text):
print(f"分享详情获取失败(网络异常): {error_text}")
return # 直接返回,不设置 shareurl_ban
except Exception:
pass
# 非可恢复错误,按失效处理
task["shareurl_ban"] = stoken
print(f"分享详情获取失败: {stoken}")
add_notify(f"❗《{task['taskname']}》分享详情获取失败: {stoken}\n")
return
share_detail = self.get_detail(pwd_id, stoken, pdir_fid, _fetch_share=1)
# 如果获取详情返回错误,按可恢复性判断
if isinstance(share_detail, dict) and share_detail.get("error"):
error_text = str(share_detail.get("error") or "")
if self.is_recoverable_error(error_text):
print(f"获取分享详情失败(网络异常): {error_text}")
return # 直接返回,不设置 shareurl_ban
else:
task["shareurl_ban"] = self.format_unrecoverable_error(error_text) if hasattr(self, 'format_unrecoverable_error') else error_text
add_notify(f"❗《{task['taskname']}》获取分享详情失败: {task['shareurl_ban']}\n")
return
# 获取保存路径fid
savepath = task["savepath"]
if not self.savepath_fid.get(savepath):