rsshub
Version:
Make RSS Great Again!
42 lines (40 loc) • 1.36 kB
JavaScript
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 "./render-BQo6B4tL.mjs";
import { t as got_default } from "./got-KxxWdaxq.mjs";
import { n as apiBriefRootUrl, s as fetchClubData, u as processItems } from "./util-DaV7o5tf.mjs";
//#region lib/routes/huxiu/club.ts
const route = {
path: "/club/:id",
name: "源流",
categories: ["new-media"],
example: "/huxiu/club/2029",
parameters: { id: "俱乐部 id,可在对应俱乐部页 URL 中找到" },
maintainers: ["nczitzk"],
handler
};
async function handler(ctx) {
const id = ctx.req.param("id");
const limit = ctx.req.query("limit") ? Number.parseInt(ctx.req.query("limit"), 10) : 20;
const apiUrl = new URL("club/briefList", apiBriefRootUrl).href;
const { data, briefColumnId } = await fetchClubData(id);
const { data: response } = await got_default.post(apiUrl, { form: {
platform: "www",
club_id: id,
brief_column_id: briefColumnId,
pagesize: limit
} });
ctx.set("json", response.data.datalist);
return {
item: await processItems(response.data.datalist, limit, cache_default.tryGet),
...data
};
}
//#endregion
export { route };