import { listFeedsForUser, syncFeed } from "#server/service/rss"; export default defineWrappedResponseHandler(async (event) => { const user = await event.context.auth.requireUser(); let body: { feedId?: number } = {}; try { body = await readBody<{ feedId?: number }>(event); } catch { body = {}; } if (body.feedId !== undefined && Number.isInteger(body.feedId)) { const feeds = await listFeedsForUser(user.id); if (!feeds.some((f) => f.id === body.feedId)) { throw createError({ statusCode: 404, statusMessage: "订阅不存在" }); } const r = await syncFeed(body.feedId); return R.success({ results: [r] }); } const feeds = await listFeedsForUser(user.id); const results = []; for (const f of feeds) { results.push(await syncFeed(f.id)); } return R.success({ results }); });