From d20ec1af22358979a43c0a2a8fd80b8cf8203896 Mon Sep 17 00:00:00 2001 From: Kengwang Date: Fri, 18 Aug 2023 20:24:35 +0800 Subject: [PATCH] =?UTF-8?q?[feat]=20=E6=96=B0=E5=A2=9E=20=E7=A7=81?= =?UTF-8?q?=E4=BA=BA=20DJ?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- docs/README.md | 8 ++++++++ module/aidj_content_rcmd.js | 37 +++++++++++++++++++++++++++++++++++++ 2 files changed, 45 insertions(+) create mode 100644 module/aidj_content_rcmd.js diff --git a/docs/README.md b/docs/README.md index 5a7dde6..aab9d02 100644 --- a/docs/README.md +++ b/docs/README.md @@ -4136,6 +4136,14 @@ type='1009' 获取其 id, 如`/search?keywords= 代码时间 &type=1009` **接口地址:** `/starpick/comments/summary` +### 私人 DJ + +说明: 调用此接口可以获取私人 DJ 的推荐内容 (包括 DJ 声音和推荐歌曲) + +**接口地址:** `/aidj/content/rcmd` + +**可选参数:** `longitude` `latitude` : 当前的经纬度 + ## 离线访问此文档 此文档同时也是 Progressive Web Apps(PWA), 加入了 serviceWorker, 可离线访问 diff --git a/module/aidj_content_rcmd.js b/module/aidj_content_rcmd.js new file mode 100644 index 0000000..e677e87 --- /dev/null +++ b/module/aidj_content_rcmd.js @@ -0,0 +1,37 @@ +// 私人 DJ + +// 实际请求参数如下, 部分内容省略, 敏感信息已进行混淆 +// 可按需修改此 API 的代码 +/* {"extInfo":"{\"lastRequestTimestamp\":1692358373509,\"lbsInfoList\":[{\"lat\":40.23076381,\"lon\":129.07545186,\"time\":1692358543},{\"lat\":40.23076381,\"lon\":129.07545186,\"time\":1692055283}],\"listenedTs\":false,\"noAidjToAidj\":true}","header":"{}","e_r":true} */ + +module.exports = (query, request) => { + var extInfo = {} + if (query.latitude != undefined){ + extInfo.lbsInfoList = [ + { + lat: query.latitude, + lon: query.longitude, + time: Date.parse(new Date())/1000 + } + ] + } + extInfo.noAidjToAidj = false; + extInfo.lastRequestTimestamp = new Date().getTime() + extInfo.listenedTs = false + const data = { + extInfo: JSON.stringify(extInfo) + } + console.log(data) + return request( + 'POST', + `https://interface3.music.163.com/eapi/aidj/content/rcmd/info`, + data, + { + crypto: 'eapi', + cookie: query.cookie, + proxy: query.proxy, + realIP: query.realIP, + url: '/api/aidj/content/rcmd/info', + }, + ) +}