import { createExportTask } from "#server/service/export/jobs"; import { runExportTask } from "#server/service/export/run"; import { parseMeExportRequestBody } from "#server/utils/me-export-request-body"; import { R } from "#server/utils/response"; export default defineWrappedResponseHandler(async (event) => { const user = await event.context.auth.requireUser(); const body = await readBody(event); const { maskPolicy } = parseMeExportRequestBody(body); const task = await createExportTask({ userId: user.id, maskPolicy }); void runExportTask(task.id).catch(() => { // 后台执行失败会在任务状态中可见,此处不影响请求返回。 }); return R.success({ taskId: task.id, status: task.status, }); });