From b8852fe66fda27a8a2ec21249f65c865c00d98ab Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=98=BF=E5=8F=91?= <821374382@qq.com> Date: Fri, 12 Apr 2019 14:02:19 +0800 Subject: [PATCH 01/10] Update issue_template.md --- issue_template.md | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/issue_template.md b/issue_template.md index 6034c22..9860b78 100644 --- a/issue_template.md +++ b/issue_template.md @@ -11,4 +11,6 @@ nodejs 版本: >重现步骤尽量详细,不能含糊不清 ->如果不是提建议,提 issues 如果不照着模版来将不会优先处理或直接关闭 \ No newline at end of file +>如果不是提建议,提 issues 如果不照着模版来将不会优先处理或直接关闭 + +>先在 issues 搜一下是否有相似问题,没有再发 From ded6dc74a775c4876810f0564134a49ff9d7d12b Mon Sep 17 00:00:00 2001 From: binaryify Date: Tue, 16 Apr 2019 17:51:07 +0800 Subject: [PATCH 02/10] update CHANGELOG --- CHANGELOG.MD | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CHANGELOG.MD b/CHANGELOG.MD index ed94d24..e72ca8a 100644 --- a/CHANGELOG.MD +++ b/CHANGELOG.MD @@ -1,6 +1,6 @@ # 更新日志 ### 3.8.0 | 2019.04.14 -- 增加注册,发送验证码,校验验证码接口 via:[https://github.com/Binaryify/NeteaseCloudMusicApi/pull/460](https://github.com/Binaryify/NeteaseCloudMusicApi/pull/460) +- 增加注册,发送验证码,校验验证码接口 via:[https://github.com/Binaryify/NeteaseCloudMusicApi/pull/460](https://github.com/Binaryify/NeteaseCloudMusicApi/pull/460) @[KongValley](https://github.com/KongValley) ### 3.7.1 | 2019.04.09 - 修复登录460问题 From a260e3b352fb9793b01a1415d677224b66a2abfd Mon Sep 17 00:00:00 2001 From: binaryify Date: Wed, 24 Apr 2019 19:29:48 +0800 Subject: [PATCH 03/10] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E6=AD=8C=E8=AF=8D?= =?UTF-8?q?=E6=8E=A5=E5=8F=A3=E5=87=BA=E9=94=99=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- CHANGELOG.MD | 3 +++ module/lyric.js | 7 +++++-- package.json | 2 +- 3 files changed, 9 insertions(+), 3 deletions(-) diff --git a/CHANGELOG.MD b/CHANGELOG.MD index e72ca8a..80d59ac 100644 --- a/CHANGELOG.MD +++ b/CHANGELOG.MD @@ -1,4 +1,7 @@ # 更新日志 +### 3.8.1 | 2019.04.24 +- 修复歌词接口出错问题 + ### 3.8.0 | 2019.04.14 - 增加注册,发送验证码,校验验证码接口 via:[https://github.com/Binaryify/NeteaseCloudMusicApi/pull/460](https://github.com/Binaryify/NeteaseCloudMusicApi/pull/460) @[KongValley](https://github.com/KongValley) diff --git a/module/lyric.js b/module/lyric.js index ec4b5ca..7680b50 100644 --- a/module/lyric.js +++ b/module/lyric.js @@ -1,8 +1,11 @@ // 歌词 module.exports = (query, request) => { + const data={ + id:query.id + } return request( - 'POST', `https://music.163.com/weapi/song/lyric?os=osx&id=${query.id}&lv=-1&kv=-1&tv=-1`, {}, - {crypto: 'weapi', cookie: query.cookie, proxy: query.proxy} + 'POST', `https://music.163.com/weapi/song/lyric?lv=-1&kv=-1&tv=-1`, data, + {crypto: 'linuxapi', cookie: query.cookie, proxy: query.proxy} ) } \ No newline at end of file diff --git a/package.json b/package.json index 92c1860..f530710 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "NeteaseCloudMusicApi", - "version": "3.8.0", + "version": "3.8.1", "description": "网易云音乐 NodeJS 版 API", "scripts": { "start": "node app.js", From 9e1c701a6f16ca642202b2130399d51c9b9ef1c8 Mon Sep 17 00:00:00 2001 From: binaryify Date: Mon, 29 Apr 2019 15:51:56 +0800 Subject: [PATCH 04/10] =?UTF-8?q?=E6=9B=B4=E6=96=B0=E6=96=87=E6=A1=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- docs/README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/README.md b/docs/README.md index fe10853..8d7774e 100644 --- a/docs/README.md +++ b/docs/README.md @@ -279,7 +279,7 @@ Cookies **接口地址 :** `/captch/sent` -**调用例子 :** `/captch/sent?cellphone=13xxx` +**调用例子 :** `/captch/sent?phone=13xxx` From c8d456add75154592ce0dc123fa813e4240b03c8 Mon Sep 17 00:00:00 2001 From: binaryify Date: Fri, 3 May 2019 23:44:06 +0800 Subject: [PATCH 05/10] =?UTF-8?q?v3.9.0=20=E6=96=B0=E5=A2=9E=20=E4=BA=91?= =?UTF-8?q?=E7=9B=98=E6=AD=8C=E6=9B=B2=E5=88=A0=E9=99=A4,=20=E7=83=AD?= =?UTF-8?q?=E9=97=A8=E8=AF=9D=E9=A2=98,=20=E7=94=B5=E5=8F=B0=20-=20?= =?UTF-8?q?=E6=8E=A8=E8=8D=90=E7=B1=BB=E5=9E=8B,=20=E7=94=B5=E5=8F=B0=20-?= =?UTF-8?q?=20=E9=9D=9E=E7=83=AD=E9=97=A8=E7=B1=BB=E5=9E=8B,=20=E7=94=B5?= =?UTF-8?q?=E5=8F=B0=20-=20=E4=BB=8A=E6=97=A5=E4=BC=98=E9=80=89,=20?= =?UTF-8?q?=E5=BF=83=E5=8A=A8=E6=A8=A1=E5=BC=8F/=E6=99=BA=E8=83=BD?= =?UTF-8?q?=E6=92=AD=E6=94=BE=E7=AD=89=E6=8E=A5=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- CHANGELOG.MD | 5 ++ docs/README.md | 100 +++++++++++++++++++++++++-- docs/index.html | 1 + module/banner.js | 8 ++- module/dj_banner.js | 11 +++ module/dj_category_excludehot.js | 9 +++ module/dj_category_recommend.js | 9 +++ module/dj_paygift.js | 2 +- module/dj_today_perfered.js | 11 +++ module/event.js | 6 +- module/hot_topic.js | 12 ++++ module/playmode_intelligence_list.js | 17 +++++ module/user_cloud_del.js | 12 ++++ package.json | 2 +- 14 files changed, 196 insertions(+), 9 deletions(-) create mode 100644 module/dj_banner.js create mode 100644 module/dj_category_excludehot.js create mode 100644 module/dj_category_recommend.js create mode 100644 module/dj_today_perfered.js create mode 100644 module/hot_topic.js create mode 100644 module/playmode_intelligence_list.js create mode 100644 module/user_cloud_del.js diff --git a/CHANGELOG.MD b/CHANGELOG.MD index 80d59ac..8ef1f7b 100644 --- a/CHANGELOG.MD +++ b/CHANGELOG.MD @@ -1,4 +1,9 @@ # 更新日志 +### 3.9.0 | 2019.05.03 +- 新增 云盘歌曲删除, 热门话题, 电台 - 推荐类型, 电台 - 非热门类型, 电台 - 今日优选, 心动模式/智能播放等接口 + +- 更新文档:banner接口 增加 `type` 参数; 获取动态消息接口增加 `pagesize` 和 `lasttime` 参数; 电台 - 付费精选接口修改默认`limit`为 30 + ### 3.8.1 | 2019.04.24 - 修复歌词接口出错问题 diff --git a/docs/README.md b/docs/README.md index 8d7774e..6f160d6 100644 --- a/docs/README.md +++ b/docs/README.md @@ -114,6 +114,13 @@ 96. 已收藏专辑列表 97. 获取动态评论 98. 歌单收藏者列表 +99. 云盘歌曲删除 +100. 热门话题 +101. 电台 - 推荐类型 +102. 电台 - 非热门类型 +103. 电台 - 今日优选 +104. 心动模式/智能播放 + ## 安装 @@ -524,16 +531,44 @@ tags:歌单tag **调用例子 :** `/user/record?uid=32953014&type=1` +### 获取热门话题 + +说明 : 调用此接口 , 可获取热门话题 + +**可选参数 :** `limit`: 取出评论数量 , 默认为 20 + +`offset`: 偏移数量 , 用于分页 , 如 :( 评论页数 -1)\*20, 其中 20 为 limit 的值 + +**接口地址 :** `/act/hot` + +**调用例子 :** `/act/hot?limit=30&offset=30` + +### 心动模式/智能播放 +说明 : 调用此接口 , 可获取心动模式/智能播放列表 +**必选参数 :** `id` : 歌曲 id + +`pid` : 歌单 id + +**可选参数 :** +`sid` : 要开始播放的歌曲的 id + +**接口地址 :** `/playmode/intelligence/list` + +**调用例子 :** `/playmode/intelligence/list?id=33894312&pid=24381616` , `/playmode/intelligence/list?id=33894312&pid=24381616&sid=36871368` + ### 获取动态消息 说明 : 调用此接口 , 可获取各种动态 , 对应网页版网易云,朋友界面里的各种动态消息 ,如分享的视频,音乐,照片等! -**必选参数 :** 未知 +**必选参数 :** +`pagesize` : 每页数据,默认20 + +`lasttime` : 返回数据的 `lasttime` ,默认-1,传入上一次返回结果的 lasttime,将会返回下一页的数据 **接口地址 :** `/event` -**调用例子 :** `/event` +**调用例子 :** `/event?pagesize=30&lasttime=1556740526369` ### 歌手分类列表 @@ -1142,9 +1177,23 @@ mp3url 不能直接用 , 可通过 `/song/url` 接口传入歌曲 id 获取具 说明 : 调用此接口 , 可获取 banner( 轮播图 ) 数据 +**可选参数 :** + +`type`:资源类型,对应以下类型,默认为 0 即PC + +``` +0: pc + +1: android + +2: iphone + +3: ipad +``` + **接口地址 :** `/banner` -**调用例子 :** `/banner` +**调用例子 :** `/banner`, `/banner?type=2` ### 资源点赞( MV,电台,视频) @@ -1706,6 +1755,15 @@ MV 数据 , 数据包含 mv 名字 , 歌手 , 发布时间 , mv 视频地址等 **调用例子 :** `/user/cloud` +### 云盘歌曲删除 +说明 : 登陆后调用此接口 , 可删除云盘歌曲 + +**必选参数 :** `id`: 歌曲id,可多个,用逗号隔开 + +**接口地址 :** `/user/cloud/del` + +**调用例子 :** `/user/cloud/del` + ### 电台 - 推荐 说明 : 登陆后调用此接口 , 可获得推荐电台 @@ -1757,10 +1815,43 @@ type='1009' 获取其 id, 如`/search?keywords= 代码时间 &type=1009` 说明 : 可以获取付费精选的电台列表 , 传入 `limit` 和 `offset` 可以进行分页 +**可选参数 :** + +`limit` : 返回数量 , 默认为 30 + +`offset` : 偏移数量,用于分页 , 如 :( 页数 -1)\*30, 其中 30 为 limit 的值 , 默认为 0 + **接口地址 :** `/dj/paygift` **调用例子 :** `/dj/paygift?limit=10&offset=20` +### 电台 - 非热门类型 + +说明 : 登陆后调用此接口, 可获得电台非热门类型 + + +**接口地址 :** `/dj/category/excludehot` + +**调用例子 :** `/dj/category/excludehot` + +### 电台 - 推荐类型 + +说明 : 登陆后调用此接口, 可获得电台推荐类型 + + +**接口地址 :** `/dj/category/recommend` + +**调用例子 :** `/dj/category/recommend` + +### 电台 - 今日优选 + +说明 : 登陆后调用此接口, 可获得电台今日优选 + + +**接口地址 :** `/dj/today/perfered` + +**调用例子 :** `/dj/today/perfered` + ### 电台 - 详情 说明 : 登陆后调用此接口 , 传入`rid`, 可获得对应电台的详情介绍 @@ -1784,8 +1875,7 @@ type='1009' 获取其 id, 如`/search?keywords= 代码时间 &type=1009` `limit` : 返回数量 , 默认为 30 -`offset` : 偏移数量,用于分页 , 如 -: 如 :( 页数 -1)\*30, 其中 30 为 limit 的值 , 默认为 0 +`offset` : 偏移数量,用于分页 , 如 :( 页数 -1)\*30, 其中 30 为 limit 的值 , 默认为 0 `asc` : 排序方式,默认为 `false` (新 => 老 ) 设置 `true` 可改为 老 => 新 diff --git a/docs/index.html b/docs/index.html index 1496390..45a6b59 100644 --- a/docs/index.html +++ b/docs/index.html @@ -8,6 +8,7 @@ + diff --git a/module/banner.js b/module/banner.js index 9a0148d..11cab05 100644 --- a/module/banner.js +++ b/module/banner.js @@ -1,8 +1,14 @@ // 首页轮播图 module.exports = (query, request) => { + const type = { + 0: 'pc', + 1: 'android', + 2: 'iphone', + 3: 'ipad' + }[query.type || 0] || 'pc'; return request( - 'POST', `https://music.163.com/api/v2/banner/get`, {clientType: "pc"}, + 'POST', `https://music.163.com/api/v2/banner/get`, {clientType: type}, {crypto: 'linuxapi', proxy: query.proxy} ) } \ No newline at end of file diff --git a/module/dj_banner.js b/module/dj_banner.js new file mode 100644 index 0000000..898507c --- /dev/null +++ b/module/dj_banner.js @@ -0,0 +1,11 @@ +// 电台banner + +module.exports = (query, request) => { + const data = {}; + return request( + "POST", + `http://music.163.com/weapi/djradio/banner/get`, + {}, + { crypto: "weapi", cookie: query.cookie, proxy: query.proxy } + ); +}; diff --git a/module/dj_category_excludehot.js b/module/dj_category_excludehot.js new file mode 100644 index 0000000..6cc2de2 --- /dev/null +++ b/module/dj_category_excludehot.js @@ -0,0 +1,9 @@ +// dj非热门类型 + +module.exports = (query, request) => { + + return request( + 'POST', `http://music.163.com/weapi/djradio/category/excludehot`, {}, + {crypto: 'weapi', cookie: query.cookie, proxy: query.proxy} + ) +}; \ No newline at end of file diff --git a/module/dj_category_recommend.js b/module/dj_category_recommend.js new file mode 100644 index 0000000..0c55719 --- /dev/null +++ b/module/dj_category_recommend.js @@ -0,0 +1,9 @@ +// dj推荐类型 + +module.exports = (query, request) => { + + return request( + 'POST', `http://music.163.com/weapi/djradio/home/category/recommend`, {}, + {crypto: 'weapi', cookie: query.cookie, proxy: query.proxy} + ) +}; \ No newline at end of file diff --git a/module/dj_paygift.js b/module/dj_paygift.js index 7a25503..ae7e6b7 100644 --- a/module/dj_paygift.js +++ b/module/dj_paygift.js @@ -2,7 +2,7 @@ module.exports = (query, request) => { const data = { - limit: query.limit || 10, + limit: query.limit || 30, offset: query.offset || 0 } return request( diff --git a/module/dj_today_perfered.js b/module/dj_today_perfered.js new file mode 100644 index 0000000..f0438dd --- /dev/null +++ b/module/dj_today_perfered.js @@ -0,0 +1,11 @@ +// dj今日优选 + +module.exports = (query, request) => { + const data = { + page: query.page || 0 + }; + return request( + 'POST', `http://music.163.com/weapi/djradio/home/today/perfered`, data, + {crypto: 'weapi', cookie: query.cookie, proxy: query.proxy} + ) +}; \ No newline at end of file diff --git a/module/event.js b/module/event.js index ec6284b..aab886e 100644 --- a/module/event.js +++ b/module/event.js @@ -1,8 +1,12 @@ // 动态 module.exports = (query, request) => { + const data={ + "pagesize": query.pagesize || 20, + "lasttime": query.lasttime || -1 + } return request( - 'POST', `https://music.163.com/weapi/v1/event/get`, {}, + 'POST', `https://music.163.com/weapi/v1/event/get`, data, {crypto: 'weapi', cookie: query.cookie, proxy: query.proxy} ) } \ No newline at end of file diff --git a/module/hot_topic.js b/module/hot_topic.js new file mode 100644 index 0000000..c1889ba --- /dev/null +++ b/module/hot_topic.js @@ -0,0 +1,12 @@ +//热门话题 + +module.exports = (query, request) => { + const data = { + limit: query.limit || 20, + offset: query.offset || 0 + } + return request( + 'POST', `http://music.163.com/weapi/act/hot`, data, + {crypto: 'weapi', cookie: query.cookie, proxy: query.proxy} + ) +}; \ No newline at end of file diff --git a/module/playmode_intelligence_list.js b/module/playmode_intelligence_list.js new file mode 100644 index 0000000..470cd69 --- /dev/null +++ b/module/playmode_intelligence_list.js @@ -0,0 +1,17 @@ +// 智能播放 + +module.exports = (query, request) => { + const data = { + songId: query.id, + type: "fromPlayOne", + playlistId: query.pid, + startMusicId: query.sid || query.id, + count: query.count || 1 + }; + return request( + "POST", + `http://music.163.com/weapi/playmode/intelligence/list`, + data, + { crypto: "weapi", cookie: query.cookie, proxy: query.proxy } + ); +}; diff --git a/module/user_cloud_del.js b/module/user_cloud_del.js new file mode 100644 index 0000000..b2a564d --- /dev/null +++ b/module/user_cloud_del.js @@ -0,0 +1,12 @@ +// 云盘歌曲删除 + +module.exports = (query, request) => { + const data = { + songIds: [query.id] + }; + return request("POST", `http://music.163.com/weapi/cloud/del`, data, { + crypto: "weapi", + cookie: query.cookie, + proxy: query.proxy + }); +}; diff --git a/package.json b/package.json index f530710..a581e6e 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "NeteaseCloudMusicApi", - "version": "3.8.1", + "version": "3.9.0", "description": "网易云音乐 NodeJS 版 API", "scripts": { "start": "node app.js", From d8969652f9469d0108ec5d4208cf09cc52e233a6 Mon Sep 17 00:00:00 2001 From: binaryify Date: Sat, 4 May 2019 09:58:24 +0800 Subject: [PATCH 06/10] update README.MD --- README.MD | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/README.MD b/README.MD index e4cfe5b..d618a11 100644 --- a/README.MD +++ b/README.MD @@ -20,6 +20,7 @@ ## 功能特性 + 1. 登录 2. 刷新登录 3. 发送验证码 @@ -118,6 +119,12 @@ 96. 已收藏专辑列表 97. 获取动态评论 98. 歌单收藏者列表 +99. 云盘歌曲删除 +100. 热门话题 +101. 电台 - 推荐类型 +102. 电台 - 非热门类型 +103. 电台 - 今日优选 +104. 心动模式/智能播放 ## 环境要求 From d6ca1b5a79d5112d625d0f6ea6733b7447696d58 Mon Sep 17 00:00:00 2001 From: binaryify Date: Sat, 4 May 2019 09:59:09 +0800 Subject: [PATCH 07/10] update README.MD --- docs/_coverpage.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/_coverpage.md b/docs/_coverpage.md index 21357e5..c21e913 100644 --- a/docs/_coverpage.md +++ b/docs/_coverpage.md @@ -3,7 +3,7 @@ > 网易云音乐 NodeJS 版 API - 全部接口已升级到最新 -- 具备登录接口 +- 具备登录接口,多达100多个接口 - 更完善的文档 From 34c92ddece647a7dcf9ed43c6abbc85b63d98055 Mon Sep 17 00:00:00 2001 From: binaryify Date: Mon, 6 May 2019 17:04:52 +0800 Subject: [PATCH 08/10] =?UTF-8?q?=E6=9B=B4=E6=96=B0=E6=96=87=E6=A1=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- docs/README.md | 18 +++++----- public/test.html | 85 +++++++++++++++++++++++++++--------------------- 2 files changed, 58 insertions(+), 45 deletions(-) diff --git a/docs/README.md b/docs/README.md index 6f160d6..928109c 100644 --- a/docs/README.md +++ b/docs/README.md @@ -211,22 +211,24 @@ $ sudo docker run -d -p 3000:3000 netease-music-api ## 接口文档 ### 调用前须知 +!> 本项目不提供线上 demo,请不要轻易信任使用他人提供的公开服务,以免发生安全问题,泄露自己的账号和密码 -!> 为使用方便,降低门槛,登录接口直接使用了 get 明文请求,请按实际需求对源码修改 +!> 为使用方便,降低门槛, 文档示例接口直接使用了 GET 请求,本项目同时支持 GET/POST 请按实际需求使用 -!> 由于接口做了缓存处理 ( 缓存 2 分钟,不缓存数据极容易引起网易服务器高频ip错误 , 可在 app.js 设置 , 可能会导致登陆后获取不 -到 cookie), 相同的 url 会在两分钟内只向网易服务器发一次请求 , 如果遇到不需要缓 +!> 由于接口做了缓存处理 ( 缓存 2 分钟,不缓存数据极容易引起网易服务器高频ip错误 , 可在 app.js 设置 , 可能会导致登陆后获取不到 cookie), **相同的 url** 会在两分钟内只向网易服务器发一次请求 , 如果遇到不需要缓 存结果的接口 , 可在请求 url 后面加一个时间戳参数使 url 不同 , 例子 : -`/simi/playlist?id=347230×tamp=1503019930000` +`/simi/playlist?id=347230×tamp=1503019930000` (之所以加入缓存机制是因为项目早期没有缓存机制,很多 issues 都是报 IP高频,请按自己需求改造缓存中间件(app.js),源码不复杂) -!> 如果是跨域请求 , 请在所有请求带上 `xhrFields: { withCredentials: true }` 否则 -可能会因为没带上 cookie 导致 301, 具体例子可看 `public/test.html`, 例子使用 jQuery, axios 版本也类似 +!> 如果是跨域请求 , 请在所有请求带上 `xhrFields: { withCredentials: true }` (axios 为 `withCredentials: true`)否则 +可能会因为没带上 cookie 导致 301, 具体例子可看 `public/test.html`, 例子使用 jQuery 和 axios -!> 301 错误基本都是没登录就调用了需要登录的接口,如果登陆了还是提示 301, 基本都是缓存把数据缓存起来了,解决方法是等待 2 分钟或者重启服务重新登录后再调用接口 +!> 301 错误基本都是没登录就调用了需要登录的接口,如果登陆了还是提示 301, 基本都是缓存把数据缓存起来了,解决方法是加时间戳或者等待 2 分钟或者重启服务重新登录后再调用接口,可自行改造缓存方法 !> 部分接口如登录接口不能调用太频繁 , 否则可能会触发 503 错误或者 ip 高频错误 ,若需频繁调用 , 需要准备 IP 代理池 (更新:已加入缓存机制,但仍需注意). -!> 本项目仅供学习使用 , 文档可能会有缓存 , 如果文档版本和 github 上的版本不一致,请清除缓存再查看 +!> 本项目仅供学习使用,请尊重版权,请勿利用此项目从事商业行为 + +!> 文档可能会有缓存 , 如果文档版本和 github 上的版本不一致,请清除缓存再查看 !> 由于网易限制,此项目在国外服务器上使用会受到限制,如需解决 , 可使用大陆服务器或者使用代理 , 感谢 [@hiyangguo](https://github.com/hiyangguo)提出的[解决方法](https://github.com/Binaryify/NeteaseCloudMusicApi/issues/29#issuecomment-298358438): 在 'util.js' 的 'headers' 处增加 `X-Real-IP':'211.161.244.70' // 任意国内 IP` diff --git a/public/test.html b/public/test.html index 2d19a76..10e8b3c 100644 --- a/public/test.html +++ b/public/test.html @@ -1,41 +1,52 @@ + + + + + test + - - - - - test - + + + + - - - - \ No newline at end of file + axios({ + url: + "http://localhost:3000/login/cellphone?phone=YOUR_PHONE&password=YOUR_PASSWORD" + }).then(function(res) { + console.log(res.data); + axios({ + url: + "http://localhost:3000/recommend/resource", + withCredentials: true //关键 + }).then(function(res) { + console.log(res.data); + }); + }); + + + From 0e8fa1b97804f953e5e173d5396b52f641f56492 Mon Sep 17 00:00:00 2001 From: jiakang <1079153785@qq.com> Date: Tue, 7 May 2019 21:47:21 +0800 Subject: [PATCH 09/10] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E8=BD=AC=E5=8F=91?= =?UTF-8?q?=E5=8A=A8=E6=80=81=E6=8E=A5=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- module/forward.js | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) create mode 100644 module/forward.js diff --git a/module/forward.js b/module/forward.js new file mode 100644 index 0000000..0cf1a4b --- /dev/null +++ b/module/forward.js @@ -0,0 +1,17 @@ +// ת̬ + +const crypto = require('crypto') + +module.exports = (query, request) => { + query.cookie.os = 'osx' + const data = { + forwards: query.forwards, + id: query.id, + eventUserId: query.eventUserId, + checkToken:query.checkToken + } + return request( + 'POST', `https://music.163.com/weapi/event/forward`, data, + {crypto: 'weapi', ua: 'pc', cookie: query.cookie, proxy: query.proxy} + ) +} \ No newline at end of file From becd7ed77bf6a04875f6ad285b9dde9307be9b22 Mon Sep 17 00:00:00 2001 From: jiakang <1079153785@qq.com> Date: Tue, 7 May 2019 21:51:15 +0800 Subject: [PATCH 10/10] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E8=BD=AC=E5=8F=91?= =?UTF-8?q?=E5=8A=A8=E6=80=81=E6=8E=A5=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- module/forward.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/module/forward.js b/module/forward.js index 0cf1a4b..8155ff8 100644 --- a/module/forward.js +++ b/module/forward.js @@ -1,4 +1,4 @@ -// ת̬ +// 转发动态 const crypto = require('crypto')