UNPKG

rsshub

Version:
57 lines (55 loc) 1.73 kB
import "./esm-shims-CzJ_djXG.mjs"; import "./config-C37vj7VH.mjs"; import "./dist-BInvbO1W.mjs"; import "./logger-Czu8UMNd.mjs"; import "./ofetch-BIyrKU3Y.mjs"; import "./parse-date-BrP7mxXf.mjs"; import { t as cache_default } from "./cache-Bo__VnGm.mjs"; import "./helpers-DxBp0Pty.mjs"; import { t as got_default } from "./got-KxxWdaxq.mjs"; import { i as processList, n as apiUrl, r as baseUrl, t as ProcessFeed } from "./utils-B719MK5q.mjs"; //#region lib/routes/vocus/user.ts const route = { path: "/user/:id", categories: ["social-media"], example: "/vocus/user/tsetyan", parameters: { id: "用户 id,可在用户主页的 URL 找到" }, features: { requireConfig: false, requirePuppeteer: false, antiCrawler: false, supportBT: false, supportPodcast: false, supportScihub: false }, name: "用户个人文章", maintainers: ["LogicJake"], handler }; async function handler(ctx) { const id = ctx.req.param("id"); const link = `${baseUrl}/user/@${id}`; const userData = await cache_default.tryGet(`vocus:user:${id}`, async () => { const { data: userData$1 } = await got_default(`${apiUrl}/api/users/${id}`, { headers: { referer: link } }); return { _id: userData$1._id, fullname: userData$1.fullname, avatarUrl: userData$1.avatarUrl, intro: userData$1.intro }; }); const { data: { articles } } = await got_default(`${apiUrl}/api/articles`, { headers: { referer: link }, searchParams: { userId: userData._id } }); const items = await ProcessFeed(processList(articles), cache_default.tryGet); return { title: `${userData.fullname}|方格子 vocus`, link, description: userData.intro, image: userData.avatarUrl, item: items }; } //#endregion export { route };