YesPlayMusic/packages/web/api/playlist.ts
2022-08-03 23:48:39 +08:00

60 lines
1.4 KiB
TypeScript
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

import request from '@/web/utils/request'
import {
FetchPlaylistParams,
FetchPlaylistResponse,
FetchRecommendedPlaylistsParams,
FetchRecommendedPlaylistsResponse,
FetchDailyRecommendPlaylistsResponse,
LikeAPlaylistParams,
LikeAPlaylistResponse,
} from '@/shared/api/Playlists'
// 歌单详情
export function fetchPlaylist(
params: FetchPlaylistParams
): Promise<FetchPlaylistResponse> {
if (!params.s) params.s = 0 // 网易云默认返回8个收藏者这里设置为0减少返回的JSON体积
return request({
url: '/playlist/detail',
method: 'get',
params: {
...params,
timestamp: new Date().getTime(),
},
})
}
// 推荐歌单
export function fetchRecommendedPlaylists(
params: FetchRecommendedPlaylistsParams
): Promise<FetchRecommendedPlaylistsResponse> {
return request({
url: '/personalized',
method: 'get',
params,
})
}
// 每日推荐歌单(需要登录)
export function fetchDailyRecommendPlaylists(): Promise<FetchDailyRecommendPlaylistsResponse> {
return request({
url: '/recommend/resource',
method: 'get',
params: {
timestamp: Date.now(),
},
})
}
export function likeAPlaylist(
params: LikeAPlaylistParams
): Promise<LikeAPlaylistResponse> {
return request({
url: '/playlist/subscribe',
method: 'post',
params: {
...params,
timestamp: Date.now(),
},
})
}