diff --git a/README.MD b/README.MD index fa5b1da..9d2137b 100644 --- a/README.MD +++ b/README.MD @@ -210,6 +210,7 @@ pnpm test ## 贡献与社区 - 欢迎提交 PR、Issue 参与维护 +- 要贡献新接口, 请参考[这篇文章](https://www.focalors.ltd/post/how-to-contribute-ncm-api) ### 致谢 diff --git a/module/comment_add.js b/module/comment_add.js new file mode 100644 index 0000000..4d1244c --- /dev/null +++ b/module/comment_add.js @@ -0,0 +1,15 @@ +// 对某一首歌曲发表评论 + +const createOption = require('../util/option.js') +module.exports = (query, request) => { + const data = { + threadId: 'R_SO_4_' + query.id, + content: query.content, + resourceType: '0', + resourceId: '0', + expressionPicId: '-1', + bubbleId: '-1', + checkToken: '', + } + return request('/api/resource/comments/add', data, createOption(query)) +} diff --git a/module/comment_delete.js b/module/comment_delete.js new file mode 100644 index 0000000..9eb182a --- /dev/null +++ b/module/comment_delete.js @@ -0,0 +1,10 @@ +// 删除评论 + +const createOption = require('../util/option.js') +module.exports = (query, request) => { + const data = { + commentId: query.cid, + threadId: 'R_SO_4_' + query.id, + } + return request(`/api/resource/comments/delete`, data, createOption(query)) +} diff --git a/module/comment_reply.js b/module/comment_reply.js new file mode 100644 index 0000000..d64e012 --- /dev/null +++ b/module/comment_reply.js @@ -0,0 +1,13 @@ +// 回复评论 + +const createOption = require('../util/option.js') +module.exports = (query, request) => { + const data = { + threadId: query.id, + commentId: query.commentId, + content: query.content, + resourceType: '0', + resourceId: '0', + } + return request(`/api/v1/resource/comments/reply`, data, createOption(query)) +} diff --git a/module/search_suggest_pc.js b/module/search_suggest_pc.js new file mode 100644 index 0000000..95cc744 --- /dev/null +++ b/module/search_suggest_pc.js @@ -0,0 +1,13 @@ +// 搜索建议pc端 + +const createOption = require('../util/option.js') +module.exports = (query, request) => { + const data = { + keyword: query.keyword || '', + } + return request( + `/api/search/pc/suggest/keyword/get`, + data, + createOption(query), + ) +} diff --git a/module/song_like.js b/module/song_like.js new file mode 100644 index 0000000..e380394 --- /dev/null +++ b/module/song_like.js @@ -0,0 +1,12 @@ +// 喜欢歌曲 + +const createOption = require('../util/option.js') +module.exports = (query, request) => { + const like = query.like !== 'false' + const data = { + trackId: query.id, + userid: query.uid, + like: like, + } + return request(`/api/song/like`, data, createOption(query)) +} diff --git a/module/user_followeds.js b/module/user_followeds.js index 397ca13..992886f 100644 --- a/module/user_followeds.js +++ b/module/user_followeds.js @@ -5,7 +5,7 @@ module.exports = (query, request) => { const data = { userId: query.uid, time: '0', - limit: query.limit || 30, + limit: query.limit || 20, offset: query.offset || 0, getcounts: 'true', } diff --git a/module/voicelist_my_created.js b/module/voicelist_my_created.js new file mode 100644 index 0000000..84f73af --- /dev/null +++ b/module/voicelist_my_created.js @@ -0,0 +1,13 @@ +// 我创建的播客声音 + +const createOption = require('../util/option.js') +module.exports = (query, request) => { + const data = { + limit: query.limit || 20, + } + return request( + `/api/social/my/created/voicelist/v1`, + data, + createOption(query, 'weapi'), + ) +} diff --git a/module/voicelist_search.js b/module/voicelist_search.js index 712675a..0220ae6 100644 --- a/module/voicelist_search.js +++ b/module/voicelist_search.js @@ -1,14 +1,11 @@ const createOption = require('../util/option.js') module.exports = (query, request) => { const data = { - fee: '-1', - limit: query.limit || '200', - offset: query.offset || '0', - podcastName: query.podcastName || '', + keyword: query.keyword || '', + scene: 'normal', + limit: query.limit || '10', + offset: query.offset || '30', + e_r: true, } - return request( - `/api/voice/workbench/voicelist/search`, - data, - createOption(query), - ) + return request(`/api/search/voicelist/get`, data, createOption(query)) } diff --git a/package.json b/package.json index ac3f0b4..3770b01 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@neteasecloudmusicapienhanced/api", - "version": "4.30.2", + "version": "4.30.3", "description": "全网最全的网易云音乐API接口 || A revival project for NeteaseCloudMusicApi Node.js Services (Half Refactor & Enhanced) || 网易云音乐 API 备份 + 增强 || 本项目自原版v4.28.0版本后开始自行维护", "scripts": { "dev": "nodemon app.js", diff --git a/public/docs/home.md b/public/docs/home.md index 5420b42..31f653a 100644 --- a/public/docs/home.md +++ b/public/docs/home.md @@ -783,7 +783,7 @@ tags: 歌单标签 **必选参数 :** `uid` : 用户 id **可选参数 :** -`limit` : 返回数量 , 默认为 30 +`limit` : 返回数量 , 默认为 20 `offset` : 偏移数量,用于分页 ,如 :( 页数 -1)\*30, 其中 30 为 limit 的值 , 默认为 0 @@ -4118,13 +4118,15 @@ type='1009' 获取其 id, 如`/search?keywords= 代码时间 &type=1009` **接口地址:** `/voicelist/search` +**必选参数:** + +`keyword`: 搜索关键词 + **可选参数:** -`limit`: 取出歌单数量 , 默认为 200 +`limit`: 取出歌单数量, 默认为 10 -`offset`: 偏移数量 , 用于分页 , 如 :( 评论页数 -1)\*200, 其中 200 为 limit 的值 - -`podcastName`: 播客名称 +`offset`: 偏移数量 , 用于分页 , 默认为 30 ### 播客声音列表 @@ -5065,6 +5067,82 @@ let data = encodeURIComponent( **调用例子 :** `/user/playlist/collect?uid=32953014` +### 搜索建议 - PC端 + +说明 : 调用此接口, 传入搜索关键词, 获取搜索建议 + +**必选参数 :** + +`keyword`: 搜索关键词 + +**接口地址 :** `/search/suggest/pc` + +**调用例子 :** `/search/suggest/pc?keyword=海阔天空` + +### 喜欢歌曲 - 新版 + +说明 : 登录后调用此接口, 传入歌曲 id 用户id和喜欢状态, 可喜欢/取消喜欢歌曲 + +**必选参数 :** + +`id`: 歌曲 id +`uid`: 用户 id +`like`: 喜欢状态, true 表示喜欢, false 表示取消喜欢 + +**接口地址 :** `/song/like` + +**调用例子 :** `/song/like?id=2058263032&uid=32953014&like=true` + +### 我创建的播客声音 + +说明 : 登录后调用此接口, 获取我创建的博客声音 + +**可选参数 :** + +`limit` : 返回数量 , 默认为 20 + +**接口地址 :** `/voicelist/my/created` + +**调用例子 :** `/voicelist/my/created` + +### 发布评论 + +说明 : 登录后调用此接口, 传入评论线程 id, 评论内容等信息, 发布评论 + +**必选参数 :** + +`id`: 歌曲id +`content`: 评论内容 + +**接口地址 :** `/comment/add` + +**调用例子 :** `/comment/add?id=2058263032&content=这首歌太棒了!` + +### 删除评论 + +说明 : 登录后调用此接口, 传入评论 id, 删除评论 + +**必选参数 :** +`cid`: 评论 id +`id`: 歌曲id + +**接口地址 :** `/comment/delete` + +**调用例子 :** `/comment/delete?threadId=2058263032&commentId=123456789` + +### 回复评论 + +说明 : 登录后调用此接口, 传入歌曲 id, 回复内容等信息, 回复评论 + +**必选参数 :** +`id`: 歌曲id +`commentId`: 被回复的评论 id +`content`: 回复内容 + +**接口地址 :** `/comment/reply` + +**调用例子 :** `/comment/reply?id=2058263032&commentId=123456789&content=我也觉得这首歌很棒!` + ## 离线访问此文档 此文档同时也是 Progressive Web Apps(PWA), 加入了 serviceWorker, 可离线访问