最近闲着没事,就琢磨着搞点平时挺喜欢听歌,特别是那些老情歌,伤感的也甜蜜的也罢,总觉得里头有故事。听着听着就想,现在好多音乐软件都搞得花里胡哨的,广告也多,找个纯粹听情歌的地儿好像不太容易。
干脆,自己动手搭个专门听情歌的小网站,就叫“情歌网”。名字简单直接,目的也明确,就是收集和播放情歌。
开始动手
一开始想得挺简单。我本身也懂点代码,虽然不是啥大牛,但搭个小网站应该问题不大。技术选型上,就挑自己熟悉的来。
前端页面:这个就没想搞多复杂,主要是能看、能点、能听就行。直接找了个网上那种简洁风格的HTML模板,稍微改了改颜色和布局,让它看起来更符合“情歌”这个有点怀旧、有点安静的感觉。
音乐520网站提供热门歌手/热门乐队/经典歌曲合集大全打包下载,点我立即前往》》》经典歌曲合集下载专区
后端服务:这个得处理数据请求,比如获取歌曲列表、提供播放链接啥的。我用了*来写,因为写起来快,处理这种简单的请求也足够了。没用啥复杂的框架,就原生的加上Express应付一下。
歌曲数据:这块是最头疼的。歌从哪儿来?总不能自己唱。网上找了半天,要么音质不行,要么版权有问题。后来没办法,就把自己电脑里存了多年的老情歌整理了一遍,又托朋友找了点资源,凑合着先用起来。每首歌都尽量找了歌名、歌手信息,有的还配上了封面图片,虽然很多信息都不全。
数据存储:最开始图省事,想直接把歌曲信息写在代码里或者弄个JSON文件。后来觉得歌曲一多,管理起来太麻烦。就弄了个最简单的数据库SQLite,建了个表,把歌曲名、歌手、文件路径这些信息存进去。这样增删改查都方便点。
主要功能实现
把前后端架子搭起来后,就开始填功能了。
- 歌曲列表展示:这是最基本的。后端提供一个接口,读取数据库里的歌曲列表,前端请求这个接口,然后把歌名、歌手显示在页面上。
- 播放功能:点击列表里的歌曲,要能播放。搞了个HTML5的audio标签做播放器,点击歌曲时,把对应的音频文件路径传给它就行。顺便做了点简单的控制,比如播放、暂停、下一首。
- 搜索功能:歌曲多了肯定得有搜索。加了个简单的搜索框,输入歌名或者歌手名,后端就去数据库里模糊匹配一下,把结果返回给前端显示。功能很简陋,但有总比没有强。
- 简单的分类/标签:为了方便浏览,我手动给一些歌曲加了点标签,比如“伤感”、“甜蜜”、“经典老歌”之类的,做了个简单的筛选功能。
整个过程磕磕绊绊,特别是在调播放器样式和处理歌曲文件路径上,费了不少功夫。有时候一个路径写错了,或者文件编码有问题,歌就放不出来,得一点点排查。
效果
捣鼓了差不多俩星期,利用业余时间,总算是能跑起来了。现在的“情歌网”,就是一个非常非常简单的网页。打开就能看到歌曲列表,可以点着听,也可以简单搜一搜。界面不花哨,甚至有点简陋,功能也基础得很。
主要就是放了我自己整理和收集的一些情歌,老歌占多数,也有一些觉得不错的网络新歌。没啥用户系统,也没啥评论互动,纯粹就是个个人用的在线歌单播放器。
为啥非得弄这么个东西?也没啥特别的,就是觉得现在听歌的环境太嘈杂了。我就想要个干干净净、没广告、打开就能直接听歌的地方,特别是那些能勾起回忆的老情歌。自己动手搞一个,虽然糙是糙了点,技术含量也不高,但满足了自己的小需求,用着也挺舒坦。有时候也会把这个地址发给几个老朋友,他们也觉得挺能找到点以前的感觉。