From 143f2ddd71f25390d7af8eb888af2bfc7889d2ef Mon Sep 17 00:00:00 2001 From: huangxd- <649924757@qq.com> Date: Mon, 29 Sep 2025 22:54:37 +0800 Subject: [PATCH] =?UTF-8?q?1.=20EPISODE=5FTITLE=5FFILTER=E7=8E=AF=E5=A2=83?= =?UTF-8?q?=E5=8F=98=E9=87=8F=E6=94=B9=E4=B8=BA=E9=BB=98=E8=AE=A4=E5=80=BC?= =?UTF-8?q?=E8=BF=BD=E5=8A=A0=E7=9A=84=E6=96=B9=E5=BC=8F=EF=BC=8C=E5=A6=82?= =?UTF-8?q?=E6=9E=9C=E6=83=B3=E8=87=AA=E5=AE=9A=E4=B9=89=EF=BC=8C=E4=B8=8D?= =?UTF-8?q?=E7=94=A8=E5=86=99=E4=B8=80=E9=95=BF=E4=B8=B2=E4=BA=86=EF=BC=8C?= =?UTF-8?q?=E7=A4=BA=E4=BE=8B=EF=BC=9A=E2=80=9D=E6=B5=8B=E8=AF=95|test?= =?UTF-8?q?=E2=80=9C=EF=BC=8C=E5=88=99=E2=80=9D=E6=B5=8B=E8=AF=95=E2=80=9C?= =?UTF-8?q?=E5=92=8C=E2=80=9Dtest=E2=80=9C=E9=83=BD=E4=BC=9A=E4=BD=9C?= =?UTF-8?q?=E4=B8=BA=E8=BF=87=E6=BB=A4=E8=AF=8D=E8=BF=BD=E5=8A=A0=E5=88=B0?= =?UTF-8?q?=E9=9B=86=E6=A0=87=E9=A2=98=E8=BF=87=E6=BB=A4=E9=BB=98=E8=AE=A4?= =?UTF-8?q?=E5=80=BC=E5=90=8E=E9=9D=A2=EF=BC=8C=E6=B3=A8=E6=84=8F=EF=BC=9A?= =?UTF-8?q?=E8=AF=A5=E5=8F=98=E9=87=8F=E5=8F=AA=E5=AF=B9match=E8=87=AA?= =?UTF-8?q?=E5=8A=A8=E5=8C=B9=E9=85=8D=E6=9C=89=E6=95=88=202.=20wrangler.t?= =?UTF-8?q?oml=E6=96=B0=E5=A2=9Ekeep=5Fvars=20=3D=20true=E9=85=8D=E7=BD=AE?= =?UTF-8?q?=EF=BC=8C=E7=94=A8=E4=BA=8E=E4=BF=AE=E5=A4=8Dcf=E6=9B=B4?= =?UTF-8?q?=E6=96=B0=E9=83=A8=E7=BD=B2=E5=90=8E=E7=8E=AF=E5=A2=83=E5=8F=98?= =?UTF-8?q?=E9=87=8F=E8=A6=86=E7=9B=96=E7=9A=84=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 3 +++ danmu_api/worker.js | 17 +++++++++++++---- wrangler.toml | 3 ++- 3 files changed, 18 insertions(+), 5 deletions(-) diff --git a/README.md b/README.md index d1d5a29..b4b0af0 100644 --- a/README.md +++ b/README.md @@ -231,6 +231,9 @@ Settings > Functions > Advanced Setting > Function Region 切换为 Hong Kong, ```regex # EPISODE_TITLE_FILTER 默认值 (特别|惊喜|纳凉)?企划|合伙人手记|超前|速览|vlog|reaction|纯享|加更|抢先|抢鲜|预告|花絮|特辑|彩蛋|专访|幕后|直播|未播|衍生|番外|会员|片花|精华|看点|速看|解读|影评|解说|吐槽|盘点|拍摄花絮|制作花絮|幕后花絮|未播花絮|独家花絮|花絮特辑|先导预告|终极预告|正式预告|官方预告|彩蛋片段|删减片段|未播片段|番外彩蛋|精彩片段|精彩看点|精彩回顾|精彩集锦|看点解析|看点预告|NG镜头|NG花絮|番外篇|番外特辑|制作特辑|拍摄特辑|幕后特辑|导演特辑|演员特辑|片尾曲|插曲|主题曲|背景音乐|OST|音乐MV|歌曲MV|前季回顾|剧情回顾|往期回顾|内容总结|剧情盘点|精选合集|剪辑合集|混剪视频|独家专访|演员访谈|导演访谈|主创访谈|媒体采访|发布会采访|抢先看|抢先版|试看版|短剧|精编|会员版|Plus|独家版|特别版|短片|合唱|陪看|MV|高清正片|发布会|.{2,}篇|观察室|上班那点事儿|周top|赛段|直拍|REACTION|VLOG|全纪录|开播|先导|总宣|展演 + +# 如果你想新增过滤词,请自定义EPISODE_TITLE_FILTER,示例如下,每个词用'|'隔开,增加的词都会追加到默认值后面 +测试|test ``` ```regex diff --git a/danmu_api/worker.js b/danmu_api/worker.js index 1729352..b8f8752 100644 --- a/danmu_api/worker.js +++ b/danmu_api/worker.js @@ -1,6 +1,6 @@ // 全局状态(Cloudflare 和 Vercel 都可能重用实例) // ⚠️ 不是持久化存储,每次冷启动会丢失 -const VERSION = "1.1.5"; +const VERSION = "1.1.6"; let animes = []; let episodeIds = []; let episodeNum = 10001; // 全局变量,用于自增 ID @@ -142,13 +142,20 @@ let episodeTitleFilter; // 这里既支持 Cloudflare env,也支持 Node process.env function resolveEpisodeTitleFilter(env) { - // 获取环境变量中的 PLATFORM_ORDER 配置 + // 获取默认关键字 let keywords = DEFAULT_EPISODE_TITLE_FILTER; + // 检查环境变量并扩展关键字 if (env && env.EPISODE_TITLE_FILTER) { - keywords = env.EPISODE_TITLE_FILTER; // Cloudflare Workers + const customFilter = env.EPISODE_TITLE_FILTER.replace(/^\|+|\|+$/g, ''); // 去除前后 | 字符 + if (customFilter) { + keywords = `${keywords}|${customFilter}`; // Cloudflare Workers + } } else if (typeof process !== "undefined" && process.env?.EPISODE_TITLE_FILTER) { - keywords = process.env.EPISODE_TITLE_FILTER; // Vercel / Node + const customFilter = process.env.EPISODE_TITLE_FILTER.replace(/^\|+|\|+$/g, ''); // 去除前后 | 字符 + if (customFilter) { + keywords = `${keywords}|${customFilter}`; // Vercel / Node + } } try { @@ -160,6 +167,8 @@ function resolveEpisodeTitleFilter(env) { keywords = DEFAULT_EPISODE_TITLE_FILTER; } + log("log", "EPISODE_TITLE_FILTER keywords: ", keywords); + // 返回由过滤后的关键字生成的正则表达式 return new RegExp( "^" + diff --git a/wrangler.toml b/wrangler.toml index 976c4af..1643a64 100644 --- a/wrangler.toml +++ b/wrangler.toml @@ -1,3 +1,4 @@ name = "danmu-api" main = "danmu_api/worker.js" -compatibility_date = "2025-09-13" \ No newline at end of file +compatibility_date = "2025-09-13" +keep_vars = true \ No newline at end of file