修复批量下载不添加注册表的问题,增加下载系统鲁棒性

This commit is contained in:
2025-10-03 10:08:29 +08:00
parent 16f60b4b77
commit 6508d2c438
10 changed files with 933 additions and 63 deletions
+75
View File
@@ -439,6 +439,81 @@ router.post('/resume/:taskId', async (req, res) => {
}
});
/**
* 暂停批量下载任务
* POST /api/download/batch/pause/:taskId
*/
router.post('/batch/pause/:taskId', async (req, res) => {
try {
const { taskId } = req.params;
if (!taskId) {
return res.status(400).json({
success: false,
error: 'Task ID is required'
});
}
const downloadService = req.backend.getDownloadService();
const result = await downloadService.pauseBatchTask(taskId);
if (result.success) {
res.json({
success: true,
message: '批量下载任务已暂停'
});
} else {
res.status(400).json({
success: false,
error: result.error
});
}
} catch (error) {
res.status(500).json({
success: false,
error: error.message
});
}
});
/**
* 恢复批量下载任务
* POST /api/download/batch/resume/:taskId
*/
router.post('/batch/resume/:taskId', async (req, res) => {
try {
const { taskId } = req.params;
if (!taskId) {
return res.status(400).json({
success: false,
error: 'Task ID is required'
});
}
const downloadService = req.backend.getDownloadService();
const result = await downloadService.resumeBatchTask(taskId);
if (result.success) {
res.json({
success: true,
data: result.data,
message: '批量下载任务已恢复'
});
} else {
res.status(400).json({
success: false,
error: result.error
});
}
} catch (error) {
res.status(500).json({
success: false,
error: error.message
});
}
});
/**
* 取消任务
* DELETE /api/download/cancel/:taskId