223 lines
5.6 KiB
Markdown
Executable File
223 lines
5.6 KiB
Markdown
Executable File
# 🎵 Meow Music - 用户系统升级完成
|
||
|
||
## 🎉 新增功能
|
||
|
||
### 1. 完整的用户认证系统
|
||
- ✅ **用户注册** - 使用用户名、邮箱和密码注册账户
|
||
- ✅ **用户登录** - 安全的登录验证
|
||
- ✅ **会话管理** - 基于Token的身份认证
|
||
- ✅ **密码加密** - 使用bcrypt加密存储密码
|
||
|
||
### 2. 个人歌单管理
|
||
- ✅ **我喜欢** - 每个用户独立的收藏夹
|
||
- ✅ **创建歌单** - 自定义歌单名称和描述
|
||
- ✅ **添加歌曲** - 将搜索到的歌曲添加到歌单
|
||
- ✅ **删除歌曲** - 从歌单中移除歌曲
|
||
- ✅ **删除歌单** - 删除自定义歌单("我喜欢"除外)
|
||
|
||
### 3. 现代化前端界面
|
||
- ✅ **React + TailwindCSS** - 现代化UI设计
|
||
- ✅ **响应式布局** - 完美支持桌面和移动设备
|
||
- ✅ **实时搜索** - 快速搜索在线音乐
|
||
- ✅ **在线播放** - 直接在浏览器中播放音乐
|
||
- ✅ **渐变背景** - 美观的紫色渐变主题
|
||
|
||
## 📁 新增文件
|
||
|
||
### 后端文件
|
||
```
|
||
MeowEmbeddedMusicServer/
|
||
├── struct.go (更新) 新增用户和歌单数据结构
|
||
├── user.go (新增) 用户认证和管理
|
||
├── playlist.go (更新) 扩展歌单管理功能
|
||
├── main.go (更新) 添加新的API路由
|
||
├── go.mod (更新) 添加bcrypt依赖
|
||
└── index.go (更新) 支持新应用路由
|
||
```
|
||
|
||
### 前端文件
|
||
```
|
||
theme/
|
||
└── music-app.html (新增) 完整的React单页应用
|
||
```
|
||
|
||
### 配置和文档
|
||
```
|
||
├── USER_SYSTEM_README.md (新增) 详细使用文档
|
||
├── 新功能说明.md (新增) 功能概览
|
||
└── start.bat (新增) 快速启动脚本
|
||
```
|
||
|
||
### 数据文件(运行时自动创建)
|
||
```
|
||
files/
|
||
├── users.json 用户账户数据
|
||
├── user_playlists.json 用户歌单数据
|
||
└── playlists.json 旧版歌单(兼容)
|
||
```
|
||
|
||
## 🚀 快速开始
|
||
|
||
### 方法1:使用启动脚本(推荐)
|
||
```batch
|
||
# Windows
|
||
start.bat
|
||
```
|
||
|
||
### 方法2:手动启动
|
||
```bash
|
||
# 安装依赖
|
||
go mod tidy
|
||
|
||
# 启动服务器
|
||
go run .
|
||
```
|
||
|
||
### 访问应用
|
||
1. **新版应用(推荐)**: http://localhost:2233/app
|
||
2. **旧版界面**: http://localhost:2233/
|
||
|
||
## 🎨 界面预览
|
||
|
||
### 登录/注册页面
|
||
- 渐变紫色背景
|
||
- 玻璃拟态效果
|
||
- 切换登录/注册模式
|
||
- 实时表单验证
|
||
|
||
### 主应用界面
|
||
- **侧边栏**:显示搜索、我喜欢、自定义歌单
|
||
- **主内容区**:
|
||
- 搜索音乐界面
|
||
- 歌单详情展示
|
||
- 音乐播放控制
|
||
- **顶部导航**:用户信息、退出登录
|
||
|
||
### 功能特性
|
||
- 🎵 实时音乐搜索
|
||
- ▶️ 在线播放音乐
|
||
- ❤️ 添加到"我喜欢"
|
||
- 📋 创建自定义歌单
|
||
- 🎯 快速添加到歌单
|
||
- 🗑️ 删除歌曲/歌单
|
||
|
||
## 🔌 API端点
|
||
|
||
### 用户认证
|
||
```
|
||
POST /api/auth/register 注册
|
||
POST /api/auth/login 登录
|
||
POST /api/auth/logout 登出
|
||
GET /api/auth/me 获取当前用户
|
||
```
|
||
|
||
### 歌单管理(需要登录)
|
||
```
|
||
GET /api/user/playlists 获取所有歌单
|
||
POST /api/user/playlists/create 创建歌单
|
||
POST /api/user/playlists/add-song 添加歌曲
|
||
DELETE /api/user/playlists/remove-song 移除歌曲
|
||
DELETE /api/user/playlists/delete 删除歌单
|
||
```
|
||
|
||
### 音乐搜索
|
||
```
|
||
GET /stream_pcm?song=歌名&singer=歌手 搜索音乐
|
||
```
|
||
|
||
### 旧版API(向后兼容)
|
||
```
|
||
POST /api/favorite/add 添加收藏
|
||
POST /api/favorite/remove 移除收藏
|
||
GET /api/favorite/list 收藏列表
|
||
GET /api/favorite/check 检查收藏
|
||
```
|
||
|
||
## 💡 使用示例
|
||
|
||
### 1. 注册新用户
|
||
访问 http://localhost:2233/app,点击"注册":
|
||
- 输入用户名:`musiclover`
|
||
- 输入邮箱:`lover@music.com`
|
||
- 输入密码:`password123`
|
||
- 点击"注册"
|
||
|
||
### 2. 搜索音乐
|
||
登录后,在搜索框输入:
|
||
- 歌曲名:`告白气球`
|
||
- 点击"搜索"
|
||
|
||
### 3. 播放音乐
|
||
搜索结果显示后:
|
||
- 点击"▶ 播放"按钮即可播放
|
||
|
||
### 4. 添加到歌单
|
||
搜索到音乐后:
|
||
- 使用下拉菜单选择"我喜欢"
|
||
- 歌曲自动添加到歌单
|
||
|
||
### 5. 创建自定义歌单
|
||
在侧边栏"我的歌单"旁:
|
||
- 点击"+"按钮
|
||
- 输入歌单名称
|
||
- 确认创建
|
||
|
||
## 🔒 安全特性
|
||
|
||
- ✅ 密码使用bcrypt加密
|
||
- ✅ Token-based会话管理
|
||
- ✅ API请求认证保护
|
||
- ✅ 用户数据隔离
|
||
- ✅ 安全的密码存储
|
||
|
||
## 📱 兼容性
|
||
|
||
- ✅ 现代浏览器(Chrome, Firefox, Safari, Edge)
|
||
- ✅ 移动设备浏览器
|
||
- ✅ 向后兼容旧版API
|
||
- ✅ ESP32设备访问支持
|
||
|
||
## 🎯 技术栈
|
||
|
||
### 后端
|
||
- Go 1.25
|
||
- bcrypt 密码加密
|
||
- JSON 数据存储
|
||
- Token 认证
|
||
|
||
### 前端
|
||
- React 18
|
||
- TailwindCSS
|
||
- 原生JavaScript
|
||
- 单文件应用(无需构建)
|
||
|
||
## 🐛 已知限制
|
||
|
||
1. **数据存储**:使用JSON文件存储,适合小规模使用
|
||
2. **Token过期**:Token不会自动过期,关闭浏览器需重新登录
|
||
3. **并发**:多用户同时操作时有文件锁保护
|
||
|
||
## 🔮 未来计划
|
||
|
||
- [ ] SQLite数据库支持
|
||
- [ ] Token自动刷新
|
||
- [ ] 歌单分享功能
|
||
- [ ] 播放历史记录
|
||
- [ ] 歌词同步显示
|
||
- [ ] 主题切换(暗色/亮色)
|
||
- [ ] 社交功能(关注、评论)
|
||
|
||
## 📞 技术支持
|
||
|
||
遇到问题?
|
||
1. 查看 `USER_SYSTEM_README.md` 详细文档
|
||
2. 检查服务器控制台日志
|
||
3. 确认所有依赖已安装
|
||
4. 验证端口2233未被占用
|
||
|
||
---
|
||
|
||
**开始享受您的专属音乐平台吧!** 🎵✨
|
||
|
||
喵波音律-音乐家园QQ交流群:865754861
|