From 1cf15e8a6b1f799398e9e5be057e5d7e09fea037 Mon Sep 17 00:00:00 2001 From: Rixuan Shao <2023311022@bipt.edu.cn> Date: Sat, 11 Jul 2026 21:53:19 +0800 Subject: [PATCH] fix: retry mobile QR loading --- DouYinSparkFlow/tests/test_webui_safety.py | 2 ++ DouYinSparkFlow/webui/static/app.js | 9 +++++++-- 2 files changed, 9 insertions(+), 2 deletions(-) diff --git a/DouYinSparkFlow/tests/test_webui_safety.py b/DouYinSparkFlow/tests/test_webui_safety.py index 2b18e26..244effa 100644 --- a/DouYinSparkFlow/tests/test_webui_safety.py +++ b/DouYinSparkFlow/tests/test_webui_safety.py @@ -193,6 +193,8 @@ class WebUiSafetyTests(unittest.TestCase): block_end = script.index('document.querySelectorAll(".login-desktop-save")', block_start) block = script[block_start:block_end] self.assertLess(block.index("window.open(publicUrl"), block.index('await postForm("/login-desktop/open")')) + self.assertIn("refreshLoginQr(1800)", block) + self.assertIn("retries - 1", script) def test_schedule_sync_writes_configured_window_to_shared_spool(self): with tempfile.TemporaryDirectory() as temp_dir: diff --git a/DouYinSparkFlow/webui/static/app.js b/DouYinSparkFlow/webui/static/app.js index ce17d67..86440d7 100644 --- a/DouYinSparkFlow/webui/static/app.js +++ b/DouYinSparkFlow/webui/static/app.js @@ -383,7 +383,7 @@ } }; - const refreshLoginQr = async (delay = 0) => { + const refreshLoginQr = async (delay = 0, retries = 8) => { if (!qrImage) return; window.clearTimeout(qrRefreshTimer); qrRefreshTimer = window.setTimeout(async () => { @@ -401,7 +401,12 @@ if (previous) URL.revokeObjectURL(previous); if (qrStatus) qrStatus.textContent = "二维码已加载。如果过期,点击刷新。"; } catch { - if (qrStatus) qrStatus.textContent = "二维码还未准备好,请稍后刷新。"; + if (retries > 1) { + if (qrStatus) qrStatus.textContent = "登录页正在加载,继续等待二维码..."; + refreshLoginQr(1400, retries - 1); + } else if (qrStatus) { + qrStatus.textContent = "二维码还未准备好,请点击刷新重试。"; + } } }, delay); };