7.2 KiB
Executable File
7.2 KiB
Executable File
🎵 Meow Music 使用说明
📋 功能概览
Meow Music 是一个完整的音乐播放和管理系统,包含以下功能:
✨ 核心功能
-
用户系统
- 用户注册和登录
- 密码加密存储(bcrypt)
- Token认证机制
-
音乐搜索
- 实时搜索音乐
- 显示歌曲标题和艺术家
- 搜索结果缓存
-
在线播放
- 内置音频播放器
- 显示当前播放信息
- 支持标准音频控制
-
我喜欢
- 快速收藏喜欢的歌曲
- 查看收藏列表
- 移除收藏
-
歌单管理
- 创建自定义歌单
- 添加/删除歌曲
- 查看歌单详情
🚀 快速开始
1. 启动服务器
Windows:
# 方式1:双击启动
双击 start.bat
# 方式2:命令行启动
cd d:\esp32-music-server\Meow\MeowEmbeddedMusicServer
go run .
Linux/macOS:
cd /path/to/MeowEmbeddedMusicServer
./start.sh
# 或
go run .
2. 访问应用
打开浏览器,访问:
- 主应用: http://localhost:2233
- 测试版本: http://localhost:2233/test
- 经典界面: http://localhost:2233/classic
📖 使用指南
第一次使用
-
注册账户
- 访问 http://localhost:2233
- 点击"注册"标签
- 填写:用户名、邮箱、密码(至少6位)
- 点击"注册"按钮
- 注册成功后会自动进入主界面
-
登录
- 使用注册的用户名和密码登录
- 注意:登录时使用用户名,不是邮箱
搜索音乐
- 在搜索框输入歌曲名或艺术家名
- 按回车键开始搜索
- 搜索结果会显示在下方
播放音乐
- 在搜索结果中点击"播放"按钮
- 底部会出现播放器
- 使用播放器控制播放、暂停、音量等
收藏音乐
- 点击歌曲旁边的"喜欢"按钮
- 歌曲会自动添加到"我喜欢"列表
- 切换到"我喜欢"标签查看所有收藏
管理歌单
- 切换到"我的歌单"标签
- 点击"+ 新建歌单"创建新歌单
- 输入歌单名称和描述
- 点击歌单查看详情(开发中)
🔧 API接口
用户认证
注册
POST /api/auth/register
Content-Type: application/json
{
"username": "用户名",
"email": "邮箱",
"password": "密码"
}
登录
POST /api/auth/login
Content-Type: application/json
{
"username": "用户名",
"password": "密码"
}
获取当前用户
GET /api/auth/me
Authorization: Bearer {token}
登出
POST /api/auth/logout
Authorization: Bearer {token}
音乐搜索
搜索歌曲
GET /api/search?query={关键词}
收藏管理
添加到收藏
POST /api/favorite/add
Content-Type: application/json
{
"title": "歌曲名",
"artist": "艺术家",
"url": "播放链接"
}
获取收藏列表
GET /api/favorite/list
从收藏移除
POST /api/favorite/remove
Content-Type: application/json
{
"title": "歌曲名",
"artist": "艺术家"
}
歌单管理
获取用户歌单
GET /api/user/playlists
Authorization: Bearer {token}
创建歌单
POST /api/user/playlists/create
Authorization: Bearer {token}
Content-Type: application/json
{
"name": "歌单名称",
"description": "歌单描述"
}
添加歌曲到歌单
POST /api/user/playlists/add-song?playlist_id={歌单ID}
Authorization: Bearer {token}
Content-Type: application/json
{
"title": "歌曲名",
"artist": "艺术家",
"url": "播放链接"
}
从歌单移除歌曲
DELETE /api/user/playlists/remove-song?playlist_id={歌单ID}&title={歌曲名}&artist={艺术家}
Authorization: Bearer {token}
删除歌单
DELETE /api/user/playlists/delete?playlist_id={歌单ID}
Authorization: Bearer {token}
📁 文件结构
MeowEmbeddedMusicServer/
├── main.go # 主程序入口
├── user.go # 用户管理
├── playlist.go # 歌单管理
├── index.go # 路由处理
├── struct.go # 数据结构
├── start.bat # Windows启动脚本
├── start.sh # Linux/macOS启动脚本
├── files/ # 数据文件目录
│ ├── users.json # 用户数据
│ ├── user_playlists.json # 用户歌单数据
│ └── playlists.json # 遗留歌单数据
└── theme/ # 前端文件
├── full-app.html # 完整应用(主界面)
├── test-app.html # 测试版本
├── simple-app.html # 简化版本
└── index.html # 经典界面
⚙️ 配置
修改端口
编辑 main.go,找到:
port := "2233"
修改为您想要的端口号。
数据存储位置
所有数据存储在 ./files/ 目录下:
users.json- 用户账户信息(包含加密密码)user_playlists.json- 用户创建的歌单playlists.json- 遗留的公共歌单
🐛 故障排除
问题1:端口被占用
listen tcp :2233: bind: Only one usage of each socket address...
解决方法:
# 查找占用端口的进程
netstat -ano | findstr :2233
# 关闭进程(替换{PID}为实际进程ID)
taskkill /F /PID {PID}
问题2:登录失败
invalid username or password
可能原因:
- 用户名或密码错误
- 使用了邮箱而不是用户名登录
- 服务器重启后数据未正确加载
解决方法:
- 确认使用用户名登录,不是邮箱
- 检查
files/users.json是否存在且格式正确 - 重新注册一个新账户测试
问题3:搜索无结果
可能原因:
- 网络连接问题
- 搜索关键词不正确
- 音乐源服务不可用
解决方法:
- 检查网络连接
- 尝试更常见的歌曲名
- 查看服务器日志
问题4:无法播放音乐
可能原因:
- 音乐链接失效
- 浏览器不支持音频格式
- 跨域问题
解决方法:
- 尝试播放其他歌曲
- 使用Chrome或Firefox浏览器
- 检查浏览器控制台错误信息
🔒 安全建议
- 不要在公网暴露此服务 - 仅供本地或局域网使用
- 定期备份数据 - 备份
files/目录 - 使用强密码 - 建议至少8位,包含字母和数字
- 不要共享Token - 登录凭证是私密的
📞 支持
- QQ交流群: 865754861(喵波音律-音乐家园)
- 项目问题: 查看服务器日志进行调试
🎉 更新日志
v2.0.0 (2025-11-23)
- ✅ 添加完整的用户系统
- ✅ 实现歌单管理功能
- ✅ 修复死锁问题
- ✅ 修复密码存储问题
- ✅ 创建完整的Web界面
- ✅ 优化用户体验
v1.0.0 (初始版本)
- 基础音乐搜索和播放
- ESP32设备支持
- 简单收藏功能
祝您使用愉快! 🎵