neteasecloudmusicapi/module/verify_getQr.js

45 lines
982 B
JavaScript

const QRCode = require('qrcode')
module.exports = async (query, request) => {
const data = {
verifyConfigId: query.vid,
verifyType: query.type,
token: query.token,
params: JSON.stringify({
event_id: query.evid,
sign: query.sign,
}),
size: 150,
}
const res = await request(
'POST',
`https://music.163.com/weapi/frontrisk/verify/getqrcode`,
data,
{
crypto: 'weapi',
cookie: query.cookie,
proxy: query.proxy,
realIP: query.realIP,
},
)
const result = `https://st.music.163.com/encrypt-pages?qrCode=${
res.body.data.qrCode
}&verifyToken=${query.token}&verifyId=${query.vid}&verifyType=${
query.type
}&params=${JSON.stringify({
event_id: query.evid,
sign: query.sign,
})}`
return {
status: 200,
body: {
code: 200,
data: {
qrCode: res.body.data.qrCode,
qrurl: result,
qrimg: await QRCode.toDataURL(result),
},
},
}
}