QQ Music api
前言
这是一个基于 Cloudflare Workers + D1 数据库 的 QQ 音乐 API 服务,无需服务器,自动刷新凭证,部署只需几分钟。
示例api网址:api.ygking.top
文档站:doc.ygking.top
为什么选择 Cloudflare Workers?
| 特性 | 说明 |
|---|---|
| 💰 完全免费 | 每天 10 万次免费请求,个人使用绑绑有余 |
| 🚀 全球 CDN | 部署在 Cloudflare 全球边缘节点,延迟极低 |
| 🔄 自动刷新 | Cron 定时任务自动刷新凭证,无需人工干预 |
| 📦 D1 数据库 | SQLite 边缘数据库,凭证持久化存储 |
| 🔧 零运维 | 无服务器架构,不用担心宕机、升级等问题 |
功能一览
本项目提供以下 API 端点:
1 | GET /api/search?keyword=周杰伦 # 搜索歌曲/歌手/专辑/歌单 |
快速部署
步骤 1: Fork 仓库
Fork qq-music-api 到你的 GitHub。
步骤 2: 创建 D1 数据库
- 登录 Cloudflare Dashboard
- 进入 D1 SQL Database > Create database
- 名称填写:
qq-music-api - 复制 Database ID
步骤 3: 创建 Worker 并连接 Git
- Workers & Pages > Create > Create Worker
- 名称:
qq-music-api,点击 Deploy - Settings > Build > Connect Git repository
- 选择你 Fork 的仓库
步骤 4: 设置凭证
- Settings > Variables and Secrets > Add
- Type: Secret
- Name:
INITIAL_CREDENTIAL - Value: 粘贴你的 QQ 音乐凭证 JSON
步骤 5: 初始化
访问 https://你的域名/admin 完成数据库初始化。
如何获取凭证?
可以使用 QQ-Music-Player 或 qq-music-download 等工具进行 QQ 登录获取凭证。
使用示例
搜索歌曲
1 | curl "https://api.ygking.top/api/search?keyword=晴天&mun=5" |
响应:
1 | { |
获取播放链接
1 | curl "https://api.ygking.top/api/song/url?mid=0039MnYb0qxYhV&quality=flac" |
响应:
1 | { |
常见问题
Q: 凭证多久需要手动更新?
理论上永远不需要。只要 refresh_key 有效,系统会自动刷新 musickey。但如果长时间未使用(超过 90 天),可能需要重新登录获取新凭证。
Q: 免费额度够用吗?
Cloudflare Workers 免费套餐提供:
- 每天 10 万次请求
- D1 每天 500 万次读取、10 万次写入
对于个人使用完全足够。
Q: 支持哪些音质?
| 参数 | 音质 | 码率 |
|---|---|---|
| 128 | MP3 | 128kbps |
| 320 | MP3 | 320kbps |
| flac | FLAC | 无损 |
总结
通过 Cloudflare Workers + D1 的组合,我们实现了:
- ✅ 零成本部署 - 完全免费
- ✅ 自动化运维 - 凭证自动刷新
- ✅ 高可用 - 全球 CDN,99.9% 可用性
- ✅ 易于使用 - RESTful API,开箱即用
项目地址:https://github.com/tooplick/qq-music-api
⚠️ 免责声明
本项目仅供学习和个人使用,请勿用于商业用途。使用本项目产生的任何问题由使用者自行承担。
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 YGKing!
