music-api-for-qq
Version:
qq music api server
237 lines (221 loc) • 10.7 kB
Markdown
# music-api-for-qq
QQ 音乐的 Api 接口 本接口只用于前端各个技术栈的学习用,不能做为任何的商业用途。
## 前提
需要 NodeJS 8.12+ 环境
## 安装
```bash
$ npm install music-api-for-qq -D
```
插件提供了两个使用方式
## 独立服务
需要自己重新建立一个服务文件
```js
// 创建 server.js 文件
const musicApi = require('music-api-for-qq')
musicApi.server({
port: 7001, // 启动端口 默认 8080
host: '28.33.176.78', // 开启使用 ip 访问 默认访问为 localhost
path: '/music/api', // 自定义路径 默认为 /music/api
cache: false, // 开启缓存 默认关闭缓存, 传入 数字 为分钟 传入 false 关闭
use: function(server,express){ // 自定义的使用其他插件
server.use('其他插件');
server.use('/',express.static(__dirname + "/demo"))
}
})
console.log('http://28.33.176.78:7001/music/api')
```
## 路由使用
做为路由使用是方便直接嵌入到现有的 webpack 工程项目中。
#### 在 vue-cli 项目中使用
这里只演示 基于webpack-dev-server 的配置方法。其他版本的 webpack 请自行配置
```js
// 1. 在 bulid 目录中找到 webpack.dev.conf.js 文件 引入插件
const musicApi = require('music-api-for-qq')
// 2. 找到 devServer 对象 添加 before 属性使得插件做为路由使用 webpack-dev-server 的服务
devServer: {
clientLogLevel: 'warning',
historyApiFallback: {
rewrites: [
{ from: /.*/, to: path.posix.join(config.dev.assetsPublicPath, 'index.html') },
],
},
// ......
quiet: true, // necessary for FriendlyErrorsPlugin
watchOptions: {
poll: config.dev.poll,
},
+ before: function(app) {
+ app.use('/music',musicApi.router('/api'))
+ }
// 3. 然后请求 http://localhost:8080/music/api/.... 即可
}
```
## API 列表
<table>
<tr>
<th colspan="2" align="left">推荐相关</th>
</tr>
<tr>
<td>获取推荐新发专辑:</td>
<td><a href="https://github.com/JooZh/music-api-for-qq/blob/master/docs/recommend_new_album.md" target="_blank">http://localhost:8080/music/api/recommend_new_album</a></td>
</tr>
<tr>
<td>获取推荐新发MV:</td>
<td><a href="https://github.com/JooZh/music-api-for-qq/blob/master/docs/recommend_new_mv.md" target="_blank">http://localhost:8080/music/api/recommend_new_mv</a></td>
</tr>
<tr>
<td>获取推荐新发单曲:</td>
<td><a href="https://github.com/JooZh/music-api-for-qq/blob/master/docs/recommend_new_song.md" target="_blank">http://localhost:8080/music/api/recommend_new_song</a></td>
</tr>
<tr>
<td>获取为你推荐歌单:</td>
<td><a href="https://github.com/JooZh/music-api-for-qq/blob/master/docs/recommend_songlist_hot.md" target="_blank">http://localhost:8080/music/api/recommend_songlist_hot</a></td>
</tr>
<tr>
<td>获取标签推荐歌单:</td>
<td><a href="https://github.com/JooZh/music-api-for-qq/blob/master/docs/recommend_songlist_tag.md" target="_blank">http://localhost:8080/music/api/recommend_songlist_tag</a></td>
</tr>
<tr>
<th colspan="2" align="left">歌曲相关</th>
</tr>
<tr>
<td>获取歌曲详情:</td>
<td><a href="https://github.com/JooZh/music-api-for-qq/blob/master/docs/song_detail.md" target="_blank">http://localhost:8080/music/api/song_detail</a></td>
</tr>
<tr>
<td>获取歌曲歌词:</td>
<td><a href="https://github.com/JooZh/music-api-for-qq/blob/master/docs/song_lyric.md" target="_blank">http://localhost:8080/music/api/song_lyric</a></td>
</tr>
<tr>
<td>获取歌曲播放连接:</td>
<td><a href="https://github.com/JooZh/music-api-for-qq/blob/master/docs/song_play.md" target="_blank">http://localhost:8080/music/api/song_play</a></td>
</tr>
<tr>
<th colspan="2" align="left">歌手相关</th>
</tr>
<tr>
<td>获取歌手列表:</td>
<td><a href="https://github.com/JooZh/music-api-for-qq/blob/master/docs/singer_list.md" target="_blank">http://localhost:8080/music/api/singer_list</a></td>
</tr>
<tr>
<td>获取歌手详情:</td>
<td><a href="https://github.com/JooZh/music-api-for-qq/blob/master/docs/singer_detail.md" target="_blank">http://localhost:8080/music/api/singer_detail</a></td>
</tr>
<tr>
<td>获取歌手关注度:</td>
<td><a href="https://github.com/JooZh/music-api-for-qq/blob/master/docs/singer_attention.md" target="_blank">http://localhost:8080/music/api/singer_attention</a></td>
</tr>
<tr>
<td>获取歌手单曲列表:</td>
<td><a href="https://github.com/JooZh/music-api-for-qq/blob/master/docs/singer_song.md" target="_blank">http://localhost:8080/music/api/singer_song</a></td>
</tr>
<tr>
<td>获取歌手歌单列表:</td>
<td><a href="https://github.com/JooZh/music-api-for-qq/blob/master/docs/singer_album.md" target="_blank">http://localhost:8080/music/api/singer_album</a></td>
</tr>
<tr>
<td>获取歌手MV列表:</td>
<td><a href="https://github.com/JooZh/music-api-for-qq/blob/master/docs/singer_mv.md" target="_blank">http://localhost:8080/music/api/singer_mv</a></td>
</tr>
<tr>
<td>获取歌手粉丝MV列表:</td>
<td><a href="https://github.com/JooZh/music-api-for-qq/blob/master/docs/singer_fans_mv.md" target="_blank">http://localhost:8080/music/api/singer_fans_mv</a></td>
</tr>
<tr>
<td>获取相似歌手列表:</td>
<td><a href="https://github.com/JooZh/music-api-for-qq/blob/master/docs/singer_similar.md" target="_blank">http://localhost:8080/music/api/singer_similar</a></td>
</tr>
<tr>
<td>获取歌手背景介绍:</td>
<td><a href="https://github.com/JooZh/music-api-for-qq/blob/master/docs/singer_desc.md" target="_blank">http://localhost:8080/music/api/singer_desc</a></td>
</tr>
<tr>
<th colspan="2" align="left">评论相关</th>
</tr>
<tr>
<td>获取评论列表:</td>
<td><a href="https://github.com/JooZh/music-api-for-qq/blob/master/docs/commont_list.md" target="_blank">http://localhost:8080/music/api/commont_list</a></td>
</tr>
<tr>
<th colspan="2" align="left">排行榜相关</th>
</tr>
<tr>
<td>获取排行榜列表:</td>
<td><a href="https://github.com/JooZh/music-api-for-qq/blob/master/docs/top_list.md" target="_blank">http://localhost:8080/music/api/top_list</a></td>
</tr>
<tr>
<td>获取排行榜详情:</td>
<td><a href="https://github.com/JooZh/music-api-for-qq/blob/master/docs/top_detail.md" target="_blank">http://localhost:8080/music/api/top_detail</a></td>
</tr>
<tr>
<th colspan="2" align="left">MV相关</th>
</tr>
<tr>
<td>获取MV列表:</td>
<td><a href="https://github.com/JooZh/music-api-for-qq/blob/master/docs/mv_list.md" target="_blank">http://localhost:8080/music/api/mv_list</a></td>
</tr>
<tr>
<td>获取MV详情(全部):</td>
<td><a href="https://github.com/JooZh/music-api-for-qq/blob/master/docs/mv_detail_all.md" target="_blank">http://localhost:8080/music/api/mv_detail_all</a></td>
</tr>
<tr>
<td>获取MV文字介绍(拆分):</td>
<td><a href="https://github.com/JooZh/music-api-for-qq/blob/master/docs/mv_detail_info.md" target="_blank">http://localhost:8080/music/api/mv_detail_info</a></td>
</tr>
<tr>
<td>获取相关MV推荐(拆分):</td>
<td><a href="https://github.com/JooZh/music-api-for-qq/blob/master/docs/mv_detail_other.md" target="_blank">http://localhost:8080/music/api/mv_detail_other</a></td>
</tr>
<tr>
<td>获取MV播放链接(拆分):</td>
<td><a href="https://github.com/JooZh/music-api-for-qq/blob/master/docs/mv_play.md" target="_blank">http://localhost:8080/music/api/mv_play</a></td>
</tr>
<tr>
<th colspan="2" align="left">歌单相关</th>
</tr>
<tr>
<td>获取歌单列表:</td>
<td><a href="https://github.com/JooZh/music-api-for-qq/blob/master/docs/menu_list.md" target="_blank">http://localhost:8080/music/api/menu_list</a></td>
</tr>
<tr>
<td>获取歌单标签:</td>
<td><a href="https://github.com/JooZh/music-api-for-qq/blob/master/docs/menu_tags.md" target="_blank">http://localhost:8080/music/api/menu_tags</a></td>
</tr>
<tr>
<td>获取歌单详情:</td>
<td><a href="https://github.com/JooZh/music-api-for-qq/blob/master/docs/menu_detail.md" target="_blank">http://localhost:8080/music/api/menu_detail</a></td>
</tr>
<tr>
<th colspan="2" align="left">专辑相关</th>
</tr>
<tr>
<td>获取专辑列表和标签:</td>
<td><a href="https://github.com/JooZh/music-api-for-qq/blob/master/docs/album_list.md" target="_blank">http://localhost:8080/music/api/album_list</a></td>
</tr>
<tr>
<td>获取专辑详情:</td>
<td><a href="https://github.com/JooZh/music-api-for-qq/blob/master/docs/album_detail.md" target="_blank">http://localhost:8080/music/api/album_detail</a></td>
</tr>
<tr>
<th colspan="2" align="left">搜索相关</th>
</tr>
<tr>
<td>获取搜索关键字:</td>
<td><a href="https://github.com/JooZh/music-api-for-qq/blob/master/docs/search_hot_key.md" target="_blank">http://localhost:8080/music/api/search_hot_key</a></td>
</tr>
<tr>
<th colspan="2" align="left">焦点图相关</th>
</tr>
<tr>
<td>获取移动版焦点图:</td>
<td><a href="https://github.com/JooZh/music-api-for-qq/blob/master/docs/banner_h5.md" target="_blank">http://localhost:8080/music/api/banner_h5</a></td>
</tr>
<tr>
<td>获取PC版焦点图:</td>
<td><a href="https://github.com/JooZh/music-api-for-qq/blob/master/docs/banner_index.md" target="_blank">http://localhost:8080/music/api/banner_index</a></td>
</tr>
<tr>
<td>获取专辑焦点图:</td>
<td><a href="https://github.com/JooZh/music-api-for-qq/blob/master/docs/banner_album.md" target="_blank">http://localhost:8080/music/api/banner_album</a></td>
</tr>
</table>