UNPKG

music-api-for-qq

Version:
82 lines (77 loc) 1.93 kB
// 新歌首发 const options = { picSize: 300, data: { new_album:{ method: "get_album_by_tags", module: "music.web_album_library", param: { area: 3, // 参考地区 company: -1, genre: -1, type: -1, year: -1, sort: 2, sin: 0, num: 40, } } } } const formatData = (list)=>{ return list.map(item => { return { id:item.id, name:item.name, area:item.area } }) } const config = { url: '', merge: (query, dotProp) => { if (query.picSize) { dotProp.set(options, 'picSize', query.picSize) dotProp.delete(query, 'picSize'); } Object.keys(query).forEach(key=>{ query[key] = Number(query[key]) }) let param = options.data.new_album.param; options.data.new_album.param = Object.assign(param, query) return options }, handle: (res, picSize) => { let data = res.new_album.data let newData = { total: data.total, list: [], tags:{ area:formatData(data.tags.area), company:formatData(data.tags.company), genre:formatData(data.tags.genre), type:formatData(data.tags.type), year:formatData(data.tags.year), } }; data.list.forEach(item => { let album_pic = `http://y.gtimg.cn/music/photo_new/T002R${picSize}x${picSize}M000${item.album_mid}.jpg` newData.list.push({ album_id: item.album_id, album_mid: item.album_mid, album_name: item.album_name, album_pic: album_pic, public_time: item.public_time, singers: item.singers.map(i => { return { id:i.singer_id, mid:i.singer_mid, name:i.singer_name } }) }) }); return newData } } module.exports = config