Skip to content

feat: 适配 FongMi影视 原生弹幕接口#296

Open
piaoyizy wants to merge 2 commits intohuangxd-:mainfrom
piaoyizy:codex/fongmi-danmaku-api
Open

feat: 适配 FongMi影视 原生弹幕接口#296
piaoyizy wants to merge 2 commits intohuangxd-:mainfrom
piaoyizy:codex/fongmi-danmaku-api

Conversation

@piaoyizy
Copy link
Copy Markdown
Contributor

@piaoyizy piaoyizy commented May 1, 2026

概要

  • 新增 danmu_api/apis/clients/fongmi-api.js,作为 FongMi 原生弹幕请求的专用适配层
  • worker 中暴露 /api/v2/fongmi/danmaku/danmaku 两个入口
  • 返回弹幕 XML 地址时保留 token 前缀,兼容带部署路径的服务地址
  • 兼容 /danmaku/api/v2/fongmi/danmaku 这类嵌套短路径请求
  • 预留标题和集数正则处理函数,便于后续继续补充匹配规则
  • 增强网盘集数正则兼容
  • 增强综艺日期型 episode 匹配
  • 增强标题清洗规则

背景

FongMi 在这个提交中新增了可配置的弹幕接口能力:

ddea7bf713065294c98522d566cdc334e2d0b889

这次更新允许源作者通过 VodConfig.danmaku 配置自定义弹幕接口地址。
本 PR 的目的,就是让 LogVar 的弹幕 API 能直接适配这套新接口协议,让 FongMi 可以原生请求弹幕候选,而不再依赖之前的外挂注入方式。

具体改动

  • danmu_api/apis/clients/fongmi-api.js

    • 新增 FongMi 客户端专用适配层
    • 解析 FongMi 传入的 GET/POST 参数:nameepisode
    • 复用现有搜索和 bangumi 详情能力生成候选分集
    • 按标题、集数、日期等信号对候选结果排序
    • 生成可直接访问的 XML 弹幕地址
    • 独立保留标题和集数正则预处理入口,方便后续继续增强网盘命名兼容
    • 增强标题清洗规则,兼容年份、分辨率、编码等常见噪音
    • 增强网盘集数提取,补充 S01E0101x、中文期集、独立数字等场景
    • 增强综艺日期型集名匹配,提升按日期识别期数的排序效果
  • danmu_api/worker.js

    • 注册 /api/v2/fongmi/danmaku
    • 注册短路径 /danmaku
    • /danmaku 纳入 token / 路径规范化流程
    • 兼容 /danmaku/api/v2/fongmi/danmaku 这类客户端重复拼接路径的情况
  • danmu_api/apis/dandan-api.js

    • 导出 filterSameEpisodeTitle
    • 导出 getBangumiDataForMatch
    • 供 FongMi 适配层复用已有逻辑,减少重复实现

接口使用方式

合并后,FongMi 可使用以下两种地址:

  1. 完整接口地址

    • https://your-host/{token}/api/v2/fongmi/danmaku?name={name}&episode={episode}
  2. 短路径地址

    • https://your-host/{token}/danmaku
    • 也兼容客户端继续拼接成:
      https://your-host/{token}/danmaku/api/v2/fongmi/danmaku?name={name}&episode={episode}

其中:

  • {token} 为当前部署配置的访问 token
  • {name} 为 FongMi 传入的剧名
  • {episode} 为 FongMi 传入的集名

验证

  • node --check danmu_api/apis/clients/fongmi-api.js
  • node --check danmu_api/apis/dandan-api.js
  • node --check danmu_api/worker.js

@netlify
Copy link
Copy Markdown

netlify Bot commented May 1, 2026

👷 Deploy request for danmuapi pending review.

Visit the deploys page to approve it

Name Link
🔨 Latest commit b5e0a65

@vercel
Copy link
Copy Markdown

vercel Bot commented May 1, 2026

@piaoyizy is attempting to deploy a commit to the huangxd's projects Team on Vercel.

A member of the Team first needs to authorize it.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant