const axios = require('@/utils/axios');
const qs = require('querystring');
module.exports = async (ctx) => {
const uid = ctx.params.uid;
const response = await axios({
method: 'post',
url: 'http://music.163.com/api/user/playlist',
headers: {
Referer: 'https://music.163.com/',
'Content-Type': 'application/x-www-form-urlencoded',
},
data: qs.stringify({
uid: uid,
limit: 1000,
offset: 0,
}),
});
const playlist = response.data.playlist || [];
const creator = (playlist[0] || {}).creator;
const { nickname, signature, avatarUrl } = creator;
ctx.state.data = {
title: `${nickname} 的所有歌单`,
link: `http://music.163.com/user/home?id=${uid}`,
subtitle: signature,
description: signature,
author: nickname,
updated: response.headers.date,
icon: avatarUrl,
item: playlist.map((pl) => {
const image = ``;
const description = `
${p}
`) .join('')}