fix(route): 修复 bilibili 动态路由 部分情况下缺失 title 的问题

This commit is contained in:
CaoMeiYouRen 2024-04-01 17:14:33 +08:00
parent 53b064f2c0
commit a2aaf48a9e
No known key found for this signature in database
GPG Key ID: C1281DB2FA902F23
1 changed files with 5 additions and 11 deletions

View File

@ -55,14 +55,8 @@ export const route: Route = {
举例: bilibili /bilibili/user/dynamic/2267573/?mode=fulltext
:::`,
};
/**
*
*
* @author CaoMeiYouRen
* @param data
* @param [desc=true] title desc
*/
const getTitle = (data: Modules, desc = true) => {
const getTitle = (data: Modules) => {
const major = data.module_dynamic?.major;
if (!major) {
return '';
@ -74,7 +68,7 @@ const getTitle = (data: Modules, desc = true) => {
return `${major.courses?.title} - ${major.courses?.sub_title}`;
}
const type = major.type.replace('MAJOR_TYPE_', '').toLowerCase();
return major[type]?.title || (desc ? getDes(data) : '');
return major[type]?.title;
};
const getDes = (data: Modules) => {
let desc = '';
@ -103,7 +97,7 @@ const getDes = (data: Modules) => {
return major[type]?.desc;
};
const getOriginTitle = (data?: Modules) => data && getTitle(data, false);
const getOriginTitle = (data?: Modules) => data && getTitle(data);
const getOriginDes = (data?: Modules) => data && getDes(data);
const getOriginName = (data?: Modules) => data?.module_author?.name;
const getIframe = (data?: Modules, disableEmbed: boolean = false) => {
@ -331,7 +325,7 @@ async function handler(ctx) {
}
const imgHTMLSource = imgHTML ? `<br>${imgHTML}` : '';
return {
title: getTitle(data),
title: getTitle(data) || description,
description: `${description}${originDescription}<br>${urlText}${getIframe(data, disableEmbed)}${getIframe(origin, disableEmbed)}${imgHTMLSource}`,
pubDate: data.module_author?.pub_ts ? parseDate(data.module_author.pub_ts, 'X') : undefined,
link,