跳转到内容

UI 与环境变量

目标:配置云平台部署必须补齐的环境变量,让后续可以直接在前端 系统配置 界面修改变量并触发重新部署。

如果你是 电脑本地部署Docker 部署,先回对应页面把 TOKENADMIN_TOKEN 写进 config/.env。云平台继续往下看。

第 1 步:先回项目,再打开 Settings

Section titled “第 1 步:先回项目,再打开 Settings”

先回到已经部署好的项目里,后面的值都从这个项目继续找。

VercelAll Projects你的项目
用户实际操作时在 Vercel All Projects 页面里点进已部署项目的截图
先点进已经部署好的项目。

进项目后,再点左侧 Settings

用户实际操作时在 Vercel 项目页左侧点 Settings 的截图
后面的 GeneralEnvironment Variables 都从这里进去。

第 2 步:在 General 里找到 Project ID

Section titled “第 2 步:在 General 里找到 Project ID”

进到 Settings 后,先点左侧 General。 然后在右侧找到 Project ID 这一项,把这一行的值记下来。

SettingsGeneralProject ID
用户实际操作时在 Vercel Project Settings 的 General 页面里查找 Project ID 的截图,已圈出 General 和 Project ID
先看图里的 1,点左侧 General。再看 2,把 Project ID 这一行的值记下来。

这里抄到的是 Project ID,不是项目名。 把它填到:

DEPLOY_PLATFROM_PROJECT=刚才抄下来的 Project ID

这个值在账号设置里。 直接打开:

打开 Vercel Token 页面

打开后按顺序做:

  1. Create Token
  2. 名字随便填一个你自己看得懂的,例如 danmu-api
  3. 创建后立刻复制这串 Token
  4. 把它填到 DEPLOY_PLATFROM_TOKEN
第三方教程作者的 Vercel Token 创建页面实际截图
这里创建出来的值填到 DEPLOY_PLATFROM_TOKEN

第 4 步:值记好以后,回项目里的 Environment Variables

Section titled “第 4 步:值记好以后,回项目里的 Environment Variables”

前面两个值记好以后,再回来填环境变量。

你的项目SettingsEnvironment Variables

不要去账号设置里找这个页面。

用户实际操作时在 Vercel 项目设置页里打开 Environment Variables 的截图
这里才是项目自己的 Environment Variables 页面。

这里统一把刚才记下来的值填进去。 ADMIN_TOKEN 用来打开管理员页面;TOKEN 只有在要改普通访问地址时再换成自己的值。

ADMIN_TOKEN=87654321
TOKEN=87654321
DEPLOY_PLATFROM_PROJECT=刚才抄下来的 Project ID
DEPLOY_PLATFROM_TOKEN=刚才创建的 Vercel Token

如果要改普通访问地址,再把 TOKEN=87654321 换成自己的值。

第三方教程作者在 Vercel 添加环境变量的实际截图
按上面的顺序填就行,不要把 Project IDToken 对调。

第 6 步:回 Deployments,重新部署一次

Section titled “第 6 步:回 Deployments,重新部署一次”

改完环境变量后,再做一次:

项目DeploymentsRedeploy
Vercel 社区用户的部署详情实际截图,包含 Redeploy 入口
Redeploy 后,再打开管理员 UI。
https://你的域名/你的ADMIN_TOKEN

看到系统配置页,就说明 Vercel 这一条已经配好了。

前面的部署过程看 Vercel 部署

第 1 步:先在 Projects 里点进你的项目,进去后先找 Project configuration

Section titled “第 1 步:先在 Projects 里点进你的项目,进去后先找 Project configuration”

先在 Netlify 的 Projects 列表里点进你的项目。点进去以后,你会先看到下面这个界面。 现在先不要去找环境变量,先把后面要填的值一个个记下来。

你的项目Project configuration
用户提供的 Netlify 项目页面截图,已圈出 Project configuration 入口
先看图里的 1。进入项目后,先点左侧 Project configuration。后面的 Project ID / Site ID 就在这里继续找。

第 2 步:在 Project details 里找到 Project ID,把它记下来

Section titled “第 2 步:在 Project details 里找到 Project ID,把它记下来”

继续按这个顺序走:

Project configurationProject details

这一步先找:

DEPLOY_PLATFROM_PROJECT=这里抄到的 Site ID

注意:这里页面上通常显示的是 Project ID,但它下面会写 Also known as Site ID。你要记下来的就是这一项。

用户提供的 Netlify Project details 页面截图,已圈出 Project ID 位置
先看图里的 1。把这一行的 Project ID 记下来。它就是后面要填到 DEPLOY_PLATFROM_PROJECT 的值。下面那条被单独框出来的是 Also known as Site ID 提示,用来确认你找对了。

第 3 步:继续找 Team slug 或 Team ID,也先记下来

Section titled “第 3 步:继续找 Team slug 或 Team ID,也先记下来”

现在还不要去找环境变量,继续把下一个值找出来。 按这个顺序走:

Team settingsTeam details

这一步要找的是:

DEPLOY_PLATFROM_ACCOUNT=你的 Team slug 或 Team ID

优先记 Slug;如果你当前后台更容易拿到的是 Team ID,也可以直接记 Team ID不要记 team 显示名称。

用户提供的 Netlify Team details 页面截图,已圈出 Team details、Slug 和 Team ID 位置
先看 1,进入 Team details;再看 23。优先记 Slug;如果你这里更方便用 Team ID,也可以记 Team ID

第 4 步:再去创建 Personal Access Token,也记下来

Section titled “第 4 步:再去创建 Personal Access Token,也记下来”

到这一步,你已经先找到了两个值:

  • DEPLOY_PLATFROM_PROJECT
  • DEPLOY_PLATFROM_ACCOUNT

现在再去拿最后一个值:

打开 Netlify Personal Access Token 页面

打开后按这个顺序做:

  1. 点创建新的 Personal Access Token
  2. 名字自己填一个能看懂的,例如 danmu-api
  3. 创建后立刻复制这串 Token
  4. 把它记到 DEPLOY_PLATFROM_TOKEN

到这里,你后面真正要填进环境变量页的 3 个平台值就齐了:

DEPLOY_PLATFROM_ACCOUNT=刚才记下来的 Team slug 或 Team ID
DEPLOY_PLATFROM_PROJECT=刚才记下来的 Site ID
DEPLOY_PLATFROM_TOKEN=刚才创建的 Personal Access Token

第 5 步:现在再回 Environment variables,统一开始配置

Section titled “第 5 步:现在再回 Environment variables,统一开始配置”

值都找齐以后,再回到:

你的项目Project configurationEnvironment variables
用户提供的 Netlify Environment variables 页面截图,已圈出 Add a variable 按钮
先看图里的 1。回到 Environment variables 页面后,点右上角 Add a variable,然后把下面这些一项项加进去。

按这个顺序补:

ADMIN_TOKEN=你自己的管理员值
TOKEN=你想换掉默认 87654321 时再填
DEPLOY_PLATFROM_ACCOUNT=刚才记下来的 Team slug 或 Team ID
DEPLOY_PLATFROM_PROJECT=刚才记下来的 Site ID
DEPLOY_PLATFROM_TOKEN=刚才创建的 Personal Access Token

如果你现在只是想先打开管理员 UI,至少先加:

ADMIN_TOKEN=你自己的管理员值

第 6 步:去 Deploys 触发一次新部署

Section titled “第 6 步:去 Deploys 触发一次新部署”

Netlify 改完环境变量以后,新的值不会自动进旧实例,所以这里还要继续点:

你的项目DeploysTrigger deploy

触发一次新的部署,让刚才补进去的变量真正生效。

https://你的域名/你的ADMIN_TOKEN

看到系统配置页,就说明 Netlify 这一条已经配好了。

这段步骤依据 danmu_api/ui/README.mdNetlify 官方 Environment variables 文档Netlify 官方 Manage deploys 文档 整理。

前面的部署过程看 Netlify 部署

第 1 步:先进入你已经部署好的 Worker,把 Worker 脚本名记下来

Section titled “第 1 步:先进入你已经部署好的 Worker,把 Worker 脚本名记下来”

这条线先不要急着去填环境变量,先把后面要用到的值找齐。 先按这个顺序进入:

Workers & Pages你的 Worker

然后先记下 Worker 脚本名。 后面要填的是:

DEPLOY_PLATFROM_PROJECT=你的 Worker 脚本名
Cloudflare Worker 页面截图,已圈出 Worker 脚本名位置
先看图里的 1。把这一行的 Worker 名称记下来。DEPLOY_PLATFROM_PROJECT 就填这个,不是域名,也不是自定义标题。

继续在 Cloudflare 控制台里找到你的 Account ID。 后面要填的是:

DEPLOY_PLATFROM_ACCOUNT=你的 Cloudflare Account ID
第三方教程作者从 Cloudflare 后台复制 Account ID 的实际截图
这一张图对应的是复制 Account ID。先把它记下来,后面回环境变量页再填。

第 3 步:再去创建 Cloudflare API Token,也先记下来

Section titled “第 3 步:再去创建 Cloudflare API Token,也先记下来”

直接打开:

打开 Cloudflare API Token 页面

创建好以后,先把这个值记下来:

DEPLOY_PLATFROM_TOKEN=你的 Cloudflare API Token
Cloudflare API Token 页面截图,已圈出 Create API Token 位置
先看图里的 1。进入 API Token 页面后,创建一个新的 Token。创建完成后,把它记到 DEPLOY_PLATFROM_TOKEN

第 4 步:值找齐以后,再回 Variables and Secrets 统一配置

Section titled “第 4 步:值找齐以后,再回 Variables and Secrets 统一配置”

现在你已经先找到了这 3 个值:

DEPLOY_PLATFROM_ACCOUNT=刚才记下来的 Cloudflare Account ID
DEPLOY_PLATFROM_PROJECT=刚才记下来的 Worker 脚本名
DEPLOY_PLATFROM_TOKEN=刚才创建的 Cloudflare API Token

这时候再按下面这个顺序回去:

Workers & Pages你的 WorkerSettingsVariables and Secrets

第 5 步:把需要的变量一项项补进去

Section titled “第 5 步:把需要的变量一项项补进去”

按这个顺序补:

ADMIN_TOKEN=你自己的管理员值
TOKEN=你想换掉默认 87654321 时再填
DEPLOY_PLATFROM_ACCOUNT=刚才记下来的 Cloudflare Account ID
DEPLOY_PLATFROM_PROJECT=刚才记下来的 Worker 脚本名
DEPLOY_PLATFROM_TOKEN=刚才创建的 Cloudflare API Token

如果你现在只是想先打开管理员 UI,至少先加:

ADMIN_TOKEN=你自己的管理员值

第 6 步:保存后直接测试,不用再额外找一次重部署

Section titled “第 6 步:保存后直接测试,不用再额外找一次重部署”

当前项目这里走的是 Worker Settings 写回。 所以这一步把变量写好并保存后,直接继续测试就行,不用像 Vercel / Netlify 那样再单独回部署列表点一次重部署。

https://你的 Worker 地址/你的ADMIN_TOKEN

看到系统配置页,就说明 Cloudflare Workers 这一条已经配好了。

这段步骤依据 danmu_api/ui/README.mdCloudflare 官方 Find account and zone IDsCloudflare 官方 Create API tokenCloudflare Workers environment variables 整理。

前面的部署过程看 Cloudflare Workers 部署

第 1 步:先打开你自己的控制台入口,再在项目列表里点进 danmu_api

Section titled “第 1 步:先打开你自己的控制台入口,再在项目列表里点进 danmu_api”

如果你前面走的是中文站,就从这里进:

打开腾讯云 EdgeOne Pages 控制台

如果你前面走的是国际站,就从这里进:

打开 EdgeOne 国际站 Pages 控制台

先用和你部署时一致的站点入口登录,再停在 Pages -> 项目 列表,点进你自己的 danmu_api 项目。

EdgeOne Pages 项目列表截图,显示 danmu-api 项目卡片
先看这张图。现在还在项目列表页,这一步就是点进 danmu-api 项目详情。

第 2 步:点进项目详情后,先停在项目概览页

Section titled “第 2 步:点进项目详情后,先停在项目概览页”

点进去以后,先确认你已经进入项目详情页。 后面找值、回环境变量页,都从这个项目详情页继续走。

EdgeOne Pages 项目概览截图,显示 LogVar 弹幕API 页面
这一步已经进到项目详情了。先停在这里,不要跳走,下一步直接看浏览器地址栏。

第 3 步:看浏览器地址栏,把 pages-xxxxxxxxxxxx 这一段记下来

Section titled “第 3 步:看浏览器地址栏,把 pages-xxxxxxxxxxxx 这一段记下来”

这里要填的是 项目详情页 URL 里的那一段项目值。 在 EdgeOne Pages 里,这一段通常直接出现在浏览器地址栏里,格式类似:

pages-xxxxxxxxxxxx

也就是说,点进项目详情以后,直接看浏览器 URL,把里面这一段记下来,稍后填到 DEPLOY_PLATFROM_PROJECT。 它不是项目显示名,也不是项目访问域名。

EdgeOne Pages 项目详情页地址栏截图,已框出 pages-abb8ox 这一段项目值
看图里红框这一段。像 pages-abb8ox 这种值,就是这一步要记下来的内容,后面直接填到 DEPLOY_PLATFROM_PROJECT

第 4 步:再去创建 API Token,也先记下来

Section titled “第 4 步:再去创建 API Token,也先记下来”

如果你前面走的是中文站,就从这里进:

打开腾讯云 EdgeOne Pages API Token 页面

如果你前面走的是国际站,就从这里进:

打开 EdgeOne 国际站 API Token 页面

EdgeOne Pages API Token 页面截图,已圈出 API Token 标签页位置
先看图里的 1,确认已经到了 API Token 标签页;再看 2,页面标题就是 API Token Documentation。在这里创建一个可用 Token,然后把它记到 DEPLOY_PLATFROM_TOKEN

第 5 步:值找齐以后,再回项目的环境变量页面

Section titled “第 5 步:值找齐以后,再回项目的环境变量页面”

按这个顺序回去:

EdgeOne Pages你的项目Project SettingsEnvironment Variable or Secret
EdgeOne Pages Environment Variable or Secret 页面截图,已圈出页面标题和 Quick add 位置
值都找齐以后,再回这里统一配置,不要一开始就在这里乱填。

第 6 步:把前端后面要用到的变量一次配齐

Section titled “第 6 步:把前端后面要用到的变量一次配齐”

先补这 3 项:

ADMIN_TOKEN=87654321
DEPLOY_PLATFROM_PROJECT=刚才地址栏里记下的 pages-xxxxxxxxxxxx
DEPLOY_PLATFROM_TOKEN=刚才创建的 EdgeOne API Token

如果你还想把普通访问地址也一起换掉,再额外补:

TOKEN=87654321

这里再记住 2 条:

  • DEPLOY_PLATFROM_ACCOUNT 这条对当前 EdgeOne 实现不用填,可以留空。
  • 当前项目对 EdgeOne 的在线重部署固定走 main 分支。

第 7 步:保存后重新部署,再打开管理员 UI

Section titled “第 7 步:保存后重新部署,再打开管理员 UI”
https://你的域名/你的ADMIN_TOKEN

这一步打开后,系统设置页里的环境变量保存和“重新部署”按钮才会真正可用。

第 8 步:EdgeOne 这条线把 Upstash 一起补上

Section titled “第 8 步:EdgeOne 这条线把 Upstash 一起补上”

这一步不要等报错了再补。 实测请求一旦落到新的运行环境,前一次匹配结果就可能接不上,常见表现就是匹配弹幕直接返回 404,或者同一个地址多次访问不稳定。

  • 先在 Upstash 建一个 Redis 数据库
  • 再把 UPSTASH_REDIS_REST_URLUPSTASH_REDIS_REST_TOKEN 补进 EdgeOne 环境变量
  • 如果你想先单独看缓存这条线,也可以直接跳到 缓存配置

先去 Upstash 创建一个 Redis 数据库:

打开 Upstash Redis 控制台

Upstash 官方控制台创建 Redis 数据库的实际截图
先把库创建出来,名字自己填。建好以后再抄 REST URLREST TOKEN

然后把这两项补进 EdgeOne 的环境变量:

UPSTASH_REDIS_REST_URL=你的 REST URL
UPSTASH_REDIS_REST_TOKEN=87654321 REST TOKEN

第 9 步:补完后再回管理员 UI 检查

Section titled “第 9 步:补完后再回管理员 UI 检查”
https://你的域名/你的ADMIN_TOKEN

这段步骤依据 danmu_api/ui/README.mdEdgeOne Pages 官方 Project ManagementEdgeOne Pages 官方 API TokenEdgeOne Pages 官方 Manage Deploys 整理。

前面的部署过程看 EdgeOne Pages 部署

第 1 步:打开管理员 UI,进入 系统配置

Section titled “第 1 步:打开管理员 UI,进入 系统配置”
https://你的域名/你的ADMIN_TOKEN

把你部署平台需要的变量补齐以后,后面就不用再回平台管理页改变量了。

管理员 UI系统配置
用户实际操作时在管理员 UI 里打开系统配置页面的截图
后面改变量,直接在 系统配置 里改就行。
  • Vercel / Netlify / EdgeOne Pages:改完后点 重新部署
  • Cloudflare Workers:改完变量后直接保存测试,不用额外再找一次重新部署。
  • 本地 Node.js / Docker:大多数配置支持热更新,通常不用点重新部署;如果改的是端口,再按原部署页重启服务。

正文依据:huangxd-/danmu_apidanmu_api/ui/README.md 与当前实现代码。配图优先使用社区教程作者、论坛用户或公开控制台截图;其中 Vercel 参考 Linked Blog Starter / delasign,Netlify 参考第三方教程作者与论坛用户截图,Cloudflare 参考社区教程作者截图,Upstash 使用官方控制台真实截图。