refactor: 精简weapi的链接,统一使用uri

This commit is contained in:
overwriter
2024-06-25 22:47:17 +08:00
parent d78a4990fe
commit 46718c29f1
244 changed files with 288 additions and 401 deletions
+28 -37
View File
@@ -1,41 +1,32 @@
// 相关歌单
const { default: axios } = require('axios')
const createOption = require('../util/option.js')
module.exports = (query, request) => {
return request(
'GET',
`https://music.163.com/playlist?id=${query.id}`,
{},
{
uaType: 'pc',
cookie: query.cookie,
ua: query.ua || '',
proxy: query.proxy,
realIP: query.realIP,
},
).then((response) => {
try {
const pattern =
/<div class="cver u-cover u-cover-3">[\s\S]*?<img src="([^"]+)">[\s\S]*?<a class="sname f-fs1 s-fc0" href="([^"]+)"[^>]*>([^<]+?)<\/a>[\s\S]*?<a class="nm nm f-thide s-fc3" href="([^"]+)"[^>]*>([^<]+?)<\/a>/g
let result,
playlists = []
while ((result = pattern.exec(response.body)) != null) {
playlists.push({
creator: {
userId: result[4].slice('/user/home?id='.length),
nickname: result[5],
},
coverImgUrl: result[1].slice(0, -'?param=50y50'.length),
name: result[3],
id: result[2].slice('/playlist?id='.length),
})
}
response.body = { code: 200, playlists: playlists }
return response
} catch (err) {
response.status = 500
response.body = { code: 500, msg: err.stack }
return Promise.reject(response)
}
module.exports = async (query, request) => {
const res = await axios({
method: 'GET',
url: `https://music.163.com/playlist?id=${query.id}`,
})
try {
const pattern =
/<div class="cver u-cover u-cover-3">[\s\S]*?<img src="([^"]+)">[\s\S]*?<a class="sname f-fs1 s-fc0" href="([^"]+)"[^>]*>([^<]+?)<\/a>[\s\S]*?<a class="nm nm f-thide s-fc3" href="([^"]+)"[^>]*>([^<]+?)<\/a>/g
let result,
playlists = []
while ((result = pattern.exec(res.data)) != null) {
playlists.push({
creator: {
userId: result[4].slice('/user/home?id='.length),
nickname: result[5],
},
coverImgUrl: result[1].slice(0, -'?param=50y50'.length),
name: result[3],
id: result[2].slice('/playlist?id='.length),
})
}
res.body = { code: 200, playlists: playlists }
return res
} catch (err) {
res.status = 500
res.body = { code: 500, msg: err.stack }
return Promise.reject(res)
}
}