Closed liu347881922 closed 5 years ago
music-client是客户端,music-manage是管理端,上传是在管理端,下载是在客户端,上传的实现分了两部,第一步先把歌曲的信息发送到服务器存到数据库,然后返回它新建立的id给管理端,管理端拿到这个id后将歌曲上传到后端,上传歌曲用的是原生ajax写的,代码在这里:
下载的话就是拿到歌曲的url后又打开了一个窗口直接能下,但是这种的很不友好,最近有时间再优化一下。代码在这里:
管理端左侧有歌曲信息,点开后最上面搜索框右边就能添加音乐,添加成功会有提示,一直往下滑就能看到新加的音乐。 客户端音乐控制键最下面有个下载图标,随便点开一首歌点那个图标就可以下了。
好的 我去试一试 谢谢大佬 已star
哈哈哈,谢谢啦,我完了改改下载那里,原先的太不舒服了。
我遇到的问题的这个下载按键按了没响应也不报错 g歌曲信息不加载,而且添加时永远显示找不到歌手,也没有报错信息
我上传的逻辑有点绕,因为每个音乐都有对应的歌手,所以数据库里存音乐的时候也要把歌手id加进去,所以在加音乐的时候这个歌手必须有。你加的时候歌手写个数据库里有的歌手名字。 上传那里应该是前几天我调整组件结构时候有地方忘改了,刚刚又push了一遍,你看下。(改了下PlayControl这个组件。
放了 我ke'h客户端可以显示也可以播放
咦?你管理端音乐能显示吗?
管理端可以显示用户 歌单 歌手信息 但是歌曲信息不显示 还有就是歌手信息编辑按钮没响应
你点开歌曲信息时候控制台显示的什么?
server的控制台没有报错 前端控制台报这几个错 大佬你那边测试是可以显示歌曲信息的吗
好的,我修复一下。谢谢啦
没有没有 我最近正在学vue.js 这个项目很有学习意义 大佬还这么热心回答 真的太感谢了
哈哈哈,没事儿啦
歌手信息编辑不了是日期格式化的问题,歌曲信息显示不了是析歌词时候出现的问题。我刚刚push了,看看现在怎么样了
解析歌词原先用的是forEach遍历的,但是这种循环缺点是不能终止,所以里面需要逻辑判断的时候不能用这个,我换成for-of遍历了,这里的解析和客户端的解析有点不一样,用不着播放时候歌词高亮、滑动之类的,所以解析时候我改成只保留歌词部分,时间去掉了。
谢谢 ,
已经拉取出数据了 小问题就是 上传的音乐的信息 填的歌手是用来检索的 用户端 看歌名会显示歌手信息下 除非(歌手)-(歌名)的格式填写
这些小问题我尝试着修改下吧 顺便看能不能做个分页,数据多了一直往下翻有点费劲,现在对vue.js不是很熟悉 之前用的angular 正好练习下
还有就是上传的音乐无法播放 歌单 歌手 歌曲图片改变不了
用户端看歌名的方式修改了下,图片能上传,你把图片大小弄小点,对大小有限制。
不是大小问题 是上传路径问题
将数据文件从music-server下移到同级目录 修改那四个controller url 解决了
好的,管理端歌曲信息那里显示音乐的组件我用的vue-aplayer组件,这里用这个不合适,显示的音乐多,加载太吃内存,我有时间了修改下这里,还有就是分页问题,其实歌单那里,往歌单里加歌曲逻辑有点绕,也得优化,管理端代码有点啰嗦,可以再提炼。
已经很厉害了 那些都是小问题 谢谢大佬热心回答我的问题
哈哈哈,客气啦,有什么问题再问,一起学习😬
测试中发现 歌单删除和歌单内歌曲删除存在获取id为空和未定义的情况 java.lang.NumberFormatException: For input string: "undefined" java.lang.NumberFormatException: For input string: ""
前端获取ID的数组不对,还有后端有个接口忘写了,我有点事儿,晚上改,谢谢指出,哈哈哈
问题修复了,已经push了,顺便重写了下歌曲信息那个组件,引用vue-aplayer组件用在这里太吃内存了,还有调整了下代码和项目结构。
收到 上传音乐那里推荐SongController的 addSong那歌词添加数据库时改为 String lyric = "[00:00:00]"+req.getParameter("lyric").trim(); 不然没添加歌词时会因为没有[00:00:00]显示不出歌曲,我这边测试是这样的 ,不知道大佬那会不会有这情况
哈哈哈,是的,谢谢指出
那个问题是之前前端解析歌词导致的问题,我改前端解析方式了,所以后端可以不动。
歌曲的上传下载功能怎么使用 好像没有