常见问题
这个页面整理部署和使用过程中常见的处理方法。
截图说明:本页截图大多基于电脑端浏览器。手机浏览器里菜单可能会折叠,按钮位置也可能略有差异;如果某一步找不到入口,先把手机浏览器切换为“桌面版网站 / 电脑端 UA”再继续。
问题 1:Fork Sync 某次自动同步突然失败怎么办?
Section titled “问题 1:Fork Sync 某次自动同步突然失败怎么办?”适用于 Vercel、Netlify、Cloudflare Workers、EdgeOne Pages、Hugging Face Space 这类从 GitHub fork 自动部署的方式。
目标:先把 fork 手动同步到最新,再重新跑一次 Fork Sync。
这种红叉最常见的原因不是云平台坏了,也不是要重新部署项目,而是上游仓库这次改到了 .github/workflows/*.yml 这类 GitHub Actions 工作流文件。Fork Sync 自动运行时使用的是默认 GITHUB_TOKEN,它通常没有权限直接把上游的 workflow 文件改动写进你的 fork,所以同步会被 GitHub 权限拦截,最后显示红叉。

处理办法很简单:不要先去翻一堆日志,也不要删项目。直接按下面步骤在 GitHub 网页端点一次 Sync fork,让你本人授权完成同步,然后再手动跑一次 Fork Sync 验证。
如果页面里同时有 Node.js 20 actions are deprecated 这类黄色 warning,先不用管。它是 GitHub Actions 的弃用提醒,不是这次红叉的直接失败原因。
第 1 步:回到 Code 页,点 Sync fork
Section titled “第 1 步:回到 Code 页,点 Sync fork”先回到自己 fork 出来的 danmu_api 仓库首页处理同步。
- 点顶部
Code - 确认页面提示
This branch is ... behind huangxd-/danmu_api:main - 点右侧
Sync fork

Code,看到落后提示后点右侧 Sync fork。这一步建议在电脑网页端操作。手机端 GitHub 页面经常折叠按钮,容易找不到 Sync fork。
第 2 步:在弹窗里点 Update branch
Section titled “第 2 步:在弹窗里点 Update branch”点 Sync fork 后,会弹出 This branch is out-of-date 提示。
- 确认弹窗里写的是从
upstream repository同步提交 - 不用点
Compare - 直接点绿色的
Update branch

Update branch,不要点左边的 Compare。第 3 步:确认仓库已经同步完成
Section titled “第 3 步:确认仓库已经同步完成”点完 Update branch 后,页面会回到仓库首页。再点一次 Sync fork,如果看到 This branch is not behind the upstream ... No new commits to fetch,说明 fork 已经同步到最新。

如果一开始就看不到 Update branch,而是直接看到这个绿色提示,说明当前 fork 本来就是最新的,可以直接继续下一步。
第 4 步:回到 Fork Sync,手动再跑一次
Section titled “第 4 步:回到 Fork Sync,手动再跑一次”网页端同步完成后,回到 Actions → Fork Sync。
- 点右侧
Run workflow - 分支保持
main - 再点绿色的
Run workflow - 等它跑完

第 5 步:看结果
Section titled “第 5 步:看结果”如果新的 Fork Sync 记录变成绿色对勾,就说明自动同步工作流恢复正常了。后面 GitHub fork 有新提交时,云平台会按自己的规则重新构建部署。
如果还是红叉,继续点进新的失败记录 → Sync with Upstream job,把日志里第一段红色报错完整复制出来,再按报错处理。常见情况:
Sync fork按钮没有出现:通常说明 fork 已经是最新的,直接手动Run workflow验证即可。- 日志提示有冲突:需要先在 GitHub 网页端或本地解决冲突,再重新运行
Fork Sync。 - 日志提示权限或 token 问题:检查仓库
Settings→Actions→General里的 workflow 权限,不要删除仓库,也不要重新部署云平台项目。
处理这个问题时,不需要点左侧那个已经禁用的 Build and Push Docker Image to Docker Hub 工作流,也不需要删除云平台项目。先把 fork 同步恢复,再让平台重新构建即可。
问题 2:Build Docker / Hugging Face 工作流一直红叉怎么办?
Section titled “问题 2:Build Docker / Hugging Face 工作流一直红叉怎么办?”目标:看懂这两个可选工作流分别是做什么的。Hugging Face 同步现在默认不会启用,只有配置 ENABLE_HF_SYNC=true 才会运行。
第 1 步:先分清这两个工作流
Section titled “第 1 步:先分清这两个工作流”左侧常见的两个可选工作流是:
Build and Push Docker Image to Docker Hub:用于把仓库代码构建成 Docker 镜像并推送到 Docker Hub,主要是给想维护自己 Docker 镜像的人用。Sync to Hugging Face Space:把仓库代码同步到 Hugging Face Space。

如果当前只是用 Vercel、Netlify、Cloudflare Workers、EdgeOne Pages 部署,这两个工作流通常用不到。Docker Hub 工作流一般是上游升级镜像或用户想构建自己的 Docker 镜像时才需要;Hugging Face 工作流只有在你要同步到 Hugging Face Space 时才需要。
第 2 步:Hugging Face 同步默认关闭
Section titled “第 2 步:Hugging Face 同步默认关闭”新版上游已经加了开关:没有配置 ENABLE_HF_SYNC=true 时,sync_hf.yml 会默认跳过同步,不会真正推送到 Hugging Face Space。
如果正在用 Hugging Face Space,就去 GitHub 仓库 Variables 里配置:
ENABLE_HF_SYNC=trueHF_USERNAME=你的 Hugging Face 用户名HF_SPACE_NAME=你的 Space 名称同时在 Secrets 里配置:
HF_TOKEN=你的 Hugging Face Token具体填写步骤看:Hugging Face Space 部署教程第 10 步。
第 3 步:Docker Hub 工作流不用时再禁用
Section titled “第 3 步:Docker Hub 工作流不用时再禁用”如果不用 Docker Hub 镜像,才需要点左侧 Build and Push Docker Image to Docker Hub,然后从右上角三点菜单里禁用。

禁用成功后,看 3 个位置:顶部出现 Workflow disabled successfully,左侧对应工作流显示 Disabled,页面里出现 This workflow was disabled manually。

Disabled。Fork Sync 不属于这里的两个可选发布工作流。它是用来同步上游更新的;如果还想让 fork 自动跟上游更新,先不要禁用 Fork Sync。
问题 3:部署后播放器加载不出来弹幕怎么办?
Section titled “问题 3:部署后播放器加载不出来弹幕怎么办?”先不要直接改播放器设置。按下面顺序排查,能最快判断是服务问题、地址问题,还是平台网络问题。
第 1 步:先用部署后自检确认服务能拿到弹幕
Section titled “第 1 步:先用部署后自检确认服务能拿到弹幕”先打开 部署后自检,在 danmu_api 自带的弹幕测试页里跑一遍自动匹配和手动匹配。


如果这两步都拿不到弹幕,问题先不在播放器,先按自检页里的提示处理服务地址、TOKEN、平台域名或缓存配置。
如果自检页能拿到弹幕,但播放器里没有弹幕,再继续下面几项。
第 2 步:检查播放器里填的是基础地址
Section titled “第 2 步:检查播放器里填的是基础地址”播放器里一般填基础地址,不要填完整接口,也不要填管理员入口。
正确示例:
https://你的域名如果配置了自己的 TOKEN:
https://你的域名/你的TOKEN不要填:
https://你的域名/api/v2/search/anime?keyword=凡人修仙传也不要填:
https://你的域名/你的ADMIN_TOKEN播放器接入步骤看:播放器接入。
第 3 步:Vercel 默认域名可能需要挂梯访问
Section titled “第 3 步:Vercel 默认域名可能需要挂梯访问”如果是 Vercel 部署,vercel.app 默认域名在当前网络里可能访问不稳定:
- 页面打不开
- 页面能打开,但弹幕测试一直匹配不成功
- 自检偶尔成功,播放器里经常加载失败
这种情况通常需要挂梯访问。如果不想挂梯,建议直接绑定自己的域名,再把播放器里的地址换成新域名。
继续看:云平台绑定域名 · Vercel。
第 4 步:EdgeOne Pages 要补 Upstash
Section titled “第 4 步:EdgeOne Pages 要补 Upstash”如果是 EdgeOne Pages 部署,弹幕测试或播放器加载时经常失败,先确认已经配置 Upstash:
UPSTASH_REDIS_REST_URLUPSTASH_REDIS_REST_TOKENEdgeOne 这条线需要共享缓存。不补 Upstash 时,请求落到新的运行环境后,匹配弹幕很容易失败或返回 404。
配置步骤看:
第 5 步:确认播放器当前视频标题能匹配
Section titled “第 5 步:确认播放器当前视频标题能匹配”服务正常、地址也正确时,播放器仍可能因为视频标题太乱而自动匹配不到。常见情况:
- 标题里只有数字,没有剧名
- 标题里带了太多网站名、画质、字幕组信息
- 当前视频的集数和接口识别到的集数不一致
这时先在播放器里手动选作品和剧集。手动能选到并加载弹幕,就说明服务本身正常,只是自动匹配没识别好。
纠错与建议
这一步有问题?
可以直接提交纠错或建议。我会按页面和步骤整理处理。
教程反馈