Files
FileHost/server/api/site-sync/cleanup.post.ts
T
2026-10-17 18:15:42 +08:00

24 lines
796 B
TypeScript

import { requireSiteSyncAuth } from '../../utils/access'
import { createApiError } from '../../utils/api-error'
import { cleanupSiteSyncJobArtifacts } from '../../utils/site-sync/artifacts'
import { cleanupSiteSyncChunkSessions } from '../../utils/site-sync/chunks'
interface Body {
jobId?: string
}
export default defineEventHandler(async (event) => {
await requireSiteSyncAuth(event)
const body = await readBody<Body>(event).catch(() => null)
const jobId = body?.jobId?.trim() ?? ''
if (!jobId || jobId.length > 128) {
createApiError(event, 'INVALID_REQUEST', '缺少同步任务 ID', 400)
}
const removedChunkSessions = await cleanupSiteSyncChunkSessions(jobId)
return {
success: true,
removedChunkSessions,
...await cleanupSiteSyncJobArtifacts(jobId)
}
})