import request from '@/utils/request.ts' import type { VideoInfo } from '@/types' /** * 推荐相关 API */ export const recommendApi = { /** * 获取首页推荐 * @param page 页码 * @param size 每页数量 */ getHomeRecommend(page: number = 1, size: number = 20): Promise { return request.get('/recommend/home', { page, size }) }, /** * 获取热门推荐 * @param periodType 时间周期类型:1-日榜,2-周榜,3-月榜 * @param size 数量 */ getHotRecommend(periodType: number = 1, size: number = 20): Promise { return request.get('/recommend/hot', { periodType, size }) }, /** * 获取相似视频推荐 */ getSimilarVideos(videoId: number, limit?: number): Promise { return request.get(`/recommend/similar/${videoId}`, { limit }) }, /** * 获取标签视频推荐 */ getTagVideos(tagId: number, params?: { page?: number; size?: number }): Promise { return request.get(`/recommend/tag/${tagId}`, params) }, /** * 记录用户行为 */ recordBehavior(params: { videoId: number actionType: 'view' | 'like' | 'coin' | 'favorite' | 'share' | 'comment' }): Promise { return request.post('/recommend/behavior', params) }, /** * 更新用户兴趣 */ updateInterest(params: { tagIds: number[] }): Promise { return request.post('/recommend/interest/update', params) } }