diff --git a/CHANGELOG.MD b/CHANGELOG.MD index 4133b36..89e2fe9 100644 --- a/CHANGELOG.MD +++ b/CHANGELOG.MD @@ -1,4 +1,7 @@ # 更新日志 +### 2.3.4 | 2017.4.20 +增加歌曲详情接口,更新文档 + ### 2.3.0 | 2017.4.15 增加排行榜接口,更新文档 diff --git a/app.js b/app.js index ad94ad2..c518fb9 100644 --- a/app.js +++ b/app.js @@ -13,6 +13,7 @@ app.use('/comment', require('./router/comment')) // 获取每日推荐歌曲 app.use('/recommend/songs', require('./router/recommendSongs')) + // 获取每日推荐歌单 app.use('/recommend/resource', require('./router/recommendResource')) @@ -37,6 +38,10 @@ app.use('/music/url', require('./router/musicUrl')) // 搜歌 app.use('/search', require('.//router/search')) +// 获取音乐详情 +app.use('/music/songDetail', require('./router/songDetail')) + +// 不明 api app.use('/log/web', require('./router/logWeb')) // 私人 FM diff --git a/docs/README.md b/docs/README.md index 2ce8fd6..2878f29 100644 --- a/docs/README.md +++ b/docs/README.md @@ -33,6 +33,7 @@ Version 2.2.0 13. 把私人 FM 的歌曲移动至垃圾桶 14. 签到 15. 各排行榜 +16. 歌曲详情 ## 安装 ``` shell @@ -201,6 +202,23 @@ $ set PORT=4000 && node app.js 返回数据如下图: ![获取评论](https://raw.githubusercontent.com/Binaryify/NeteaseCloudMusicApi/master/static/comment.png) + +### 获取歌曲详情 +说明:调用此接口,传入音乐 id, 可获得歌曲详情 + +**必选参数:** +`ids`: 音乐 id,可多个,如 `ids=347230` 或者 `ids=347230,347231` + +**接口地址:** +`/music/songDetail` + +**调用例子:** +`/music/songDetail?ids=347230` + +返回数据如下图: +![获取歌曲详情](https://raw.githubusercontent.com/Binaryify/NeteaseCloudMusicApi/master/static/songDetail.png) + + ### 获取歌手专辑列表 说明:调用此接口,传入歌手 id,可获得歌手专辑列表 diff --git a/package.json b/package.json index dae3ff0..e25d18e 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "NeteaseCloudMusicApi", - "version": "2.3.0", + "version": "2.3.4", "description": "网易云音乐 NodeJS 版 API", "scripts": { "start": "node app.js", diff --git a/router/songDetail.js b/router/songDetail.js new file mode 100644 index 0000000..dae6eb9 --- /dev/null +++ b/router/songDetail.js @@ -0,0 +1,19 @@ +const express = require("express") +const router = express() +const { createRequest } = require("../util/util") + +router.get("/", (req, res) => { + const ids = req.query.ids + console.log(ids) + createRequest(`http://music.163.com/api/song/detail?ids=%5B${ids}%5D`, 'GET', null) + .then(result => { + res.setHeader("Content-Type", "application/json") + res.send(result) + }) + .catch(err => { + res.status(502).send('fetch error') + }) +}) + + +module.exports = router \ No newline at end of file diff --git a/static/songDetail.png b/static/songDetail.png new file mode 100644 index 0000000..808d0b1 Binary files /dev/null and b/static/songDetail.png differ