From 6e26d8c8cda0d3d5cbaa97d8008602ecbd64aa89 Mon Sep 17 00:00:00 2001 From: Raidou Date: Tue, 2 May 2023 13:21:57 +0800 Subject: [PATCH] feat(route): support limit parameter in bilibili channel & collection (#12421) * feat(route): support limit parameter in bilibili channel & collection * fix(route): fetch limit from ctx.query.limit --- lib/v2/bilibili/userChannel.js | 3 ++- lib/v2/bilibili/userCollection.js | 4 +++- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/lib/v2/bilibili/userChannel.js b/lib/v2/bilibili/userChannel.js index c082e6ba6..4e1a0a813 100644 --- a/lib/v2/bilibili/userChannel.js +++ b/lib/v2/bilibili/userChannel.js @@ -11,6 +11,7 @@ module.exports = async (ctx) => { const uid = parseInt(ctx.params.uid); const sid = parseInt(ctx.params.sid); const disableEmbed = ctx.params.disableEmbed; + const limit = ctx.query.limit ?? 25; const link = `https://space.bilibili.com/${uid}/channel/seriesdetail?sid=${sid}`; @@ -31,7 +32,7 @@ module.exports = async (ctx) => { return; } const [userName, face] = await cache.getUsernameAndFaceFromUID(ctx, uid); - const host = `https://api.bilibili.com/x/series/archives?mid=${uid}&series_id=${sid}&only_normal=true&sort=desc&pn=1&ps=10`; + const host = `https://api.bilibili.com/x/series/archives?mid=${uid}&series_id=${sid}&only_normal=true&sort=desc&pn=1&ps=${limit}`; const response = await got(host, { headers: { diff --git a/lib/v2/bilibili/userCollection.js b/lib/v2/bilibili/userCollection.js index f092c9de1..f613d2677 100644 --- a/lib/v2/bilibili/userCollection.js +++ b/lib/v2/bilibili/userCollection.js @@ -11,9 +11,11 @@ module.exports = async (ctx) => { const uid = parseInt(ctx.params.uid); const sid = parseInt(ctx.params.sid); const disableEmbed = ctx.params.disableEmbed; + const limit = ctx.query.limit ?? 25; + const link = `https://space.bilibili.com/${uid}/channel/collectiondetail?sid=${sid}`; const [userName, face] = await cache.getUsernameAndFaceFromUID(ctx, uid); - const host = `https://api.bilibili.com/x/polymer/space/seasons_archives_list?mid=${uid}&season_id=${sid}&sort_reverse=true&page_num=1&page_size=10`; + const host = `https://api.bilibili.com/x/polymer/space/seasons_archives_list?mid=${uid}&season_id=${sid}&sort_reverse=true&page_num=1&page_size=${limit}`; const response = await got(host, { headers: {