Vrc2Link

VRChat Media Resolver

Vrc2Link

解析 Bilibili 视频与直播、网易云歌曲与 MV。详细结果使用 API,播放器地址使用 302 跳转。

GET/api详细解析结果
GET/play302 播放跳转

请求生成器

填写媒体地址或粘贴平台分享文本,直接生成当前服务的请求链接。

等待识别媒体平台

请求模式

识别媒体平台后显示对应的画质或音质。

等待输入媒体链接

接口

所有媒体地址都应作为经过 URL 编码的 url 参数传入。

GET

/api

详细 JSON

返回统一的媒体元数据、平台画质选项和实际播放流,不直接透传平台原始响应。qualities 是平台公布的选项,真正取得的直链以 streams 为准。

参数必填说明
urlBilibili、网易云媒体地址或复制的分享文本
key启用服务器 Cookie 权限
Bilibili 高画质说明 1080p、4K、8K 通常只提供 DASH 分离的视频轨和音频轨。Cookie 可以解锁账号有权访问的画质,但不会把两条轨道转换成一个带声音的文件。
GET /api?url=https%3A%2F%2Fwww.bilibili.com%2Fvideo%2FBV...
GET

/play

302 Redirect

选择一个带画面和声音、可直接播放的单文件并跳转。不指定画质时自动选择最高可播放画质。

参数必填说明
urlBilibili、网易云媒体地址或复制的分享文本
quality精确画质;不存在时返回 422
key启用服务器 Cookie 权限
为什么 1080p 会返回 422? /play 只做一次 302,不在服务器上合并 DASH 音视频。目标画质只有分离流时会返回 quality_unavailable,不会静默降到 720p,也不会返回无声视频。
GET /play?quality=720p&url=https%3A%2F%2Fwww.bilibili.com%2Fvideo%2FBV...

鉴权与 Cookie

平台 Cookie 只保存在服务器环境变量中。

匿名请求

不传 key 时不会使用任何服务器 Cookie,按平台公开权限解析。

鉴权请求

key 与服务器 API_KEY 一致时,才会使用对应平台 Cookie。错误 key 返回 401。

配置文件

复制 config.example.envconfig.env。在浏览器开发者工具的 Network 中选择平台请求,从 Request Headers 复制完整 Cookie 值,直接粘贴到等号后面。修改后重启服务。

PORT=7890
API_KEY=替换成随机密钥
BILIBILI_COOKIE=完整的 Bilibili Cookie 请求头
NETEASE_COOKIE=完整的网易云 Cookie 请求头

常见状态码

错误响应统一使用 { "error": { "code": "...", "message": "..." } }

400地址缺失或无法识别
401访问密钥错误
422指定画质不可用
502平台接口解析失败