rsshub
Version:
Make RSS Great Again!
49 lines (47 loc) • 1.5 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 { c as fetchData, d as rootUrl, u as processItems } from "./util-DaV7o5tf.mjs";
//#region lib/routes/huxiu/tag.ts
const route = {
path: "/tag/:id",
categories: ["new-media"],
example: "/huxiu/tag/291",
parameters: { id: "标签 id,可在对应标签页 URL 中找到" },
features: {
requireConfig: false,
requirePuppeteer: false,
antiCrawler: false,
supportBT: true,
supportPodcast: true,
supportScihub: false
},
name: "标签",
maintainers: [
"xyqfer",
"HenryQW",
"nczitzk"
],
handler,
description: `更多标签请参见 [标签](https://www.huxiu.com/tags)`
};
async function handler(ctx) {
const id = ctx.req.param("id");
const limit = ctx.req.query("limit") ? Number.parseInt(ctx.req.query("limit"), 10) : 10;
const apiUrl = new URL("v2_action/tag_article_list", rootUrl).href;
const currentUrl = new URL(`tags/${id}.html`, rootUrl).href;
const { data: response } = await got_default.post(apiUrl, { form: { tag_id: id } });
return {
item: await processItems(response.data, limit, cache_default.tryGet),
...await fetchData(currentUrl)
};
}
//#endregion
export { route };