作者在 2023-08-26 01:26:26 发布以下内容
一、原始方法注入数据
二、简单过滤非法网址
三、开始解析歌曲
附上完整代码
// 初始化方法
constructor () {
// token
this.token = "Z1QljZOZiT4NTG"
// 请求地址
this.req_url = 'http://api.txapi.cn/v1/c/music_parse/wyy'
// 需要解析网易云歌曲链接
this.request_url = ''
}
二、简单过滤非法网址
filter_url (url) {
var chinese_reg = /(http[s]?:\/\/[^ ]+)/
if (url.trim().length === 0) {
console.log('请输入歌曲链接!');
return
} else if (!chinese_reg.test(url)) {
console.log('请输入正确的歌曲链接');
return
}
return url
}
三、开始解析歌曲
parse_music (url, token, data) {
let p = new Promise(function (resolve, reject) {
axios({
url: url,
method: 'GET',
params: {
token: token,
url: data
}
}).then(resp => {
if(resp.data.code != 200 && resp.data.msg != "ok"){
console.log("查询失败")
} else {
resolve(resp.data)
}
})
})
return p
}
附上完整代码
const axios = require('axios')
class Parse {
// 初始化方法
constructor () {
// token
this.token = "Z1QljZOZiT4NTG"
// 请求地址
this.req_url = 'http://api.txapi.cn/v1/c/music_parse/wyy'
// 需要解析网易云歌曲链接
this.request_url = ''
}
// 解析歌曲
parse_music (url, token, data) {
let p = new Promise(function (resolve, reject) {
axios({
url: url,
method: 'GET',
params: {
token: token,
url: data
}
}).then(resp => {
if(resp.data.code != 200 && resp.data.msg != "ok"){
console.log("查询失败")
} else {
resolve(resp.data)
}
})
})
return p
}
// 过滤非法网址
filter_url (url) {
var chinese_reg = /(http[s]?:\/\/[^ ]+)/
if (url.trim().length === 0) {
console.log('请输入歌曲链接!');
return
} else if (!chinese_reg.test(url)) {
console.log('请输入正确的歌曲链接');
return
}
return url
}
// run函数
run (url) {
this.request_url = this.filter_url(url)
if(!this.request_url){
return
}
this.shorten_url(this.req_url, this.token, this.request_url).then(res => {
console.log(res); // 查询结果
})
}
}
if(__filename === process.mainModule.filename) {
// new一个Parse对象
const p = new Parse()
// 调用run方法
p.run('https://music.163.com/song?id=86943')
}