# 作品管理模块接口文档 ## 模块概述 作品管理模块提供作品的发布、编辑、删除、点赞、收藏等功能。 --- ## 接口列表 ### 1. 发布作品 **接口路径**: `POST /api/front/works/publish` **请求头**: ``` Authorization: Bearer {token} ``` **请求参数**: ```json { "title": "作品标题", "description": "作品描述", "type": "IMAGE", "coverUrl": "封面URL", "videoUrl": "视频URL(视频作品)", "imageUrls": ["图片URL1", "图片URL2"] } ``` **type说明**: - IMAGE: 图片作品 - VIDEO: 视频作品 **返回参数**: ```json { "code": 200, "msg": "success", "data": 作品ID } ``` --- ### 2. 获取作品详情 **接口路径**: `GET /api/front/works/detail/{worksId}` **请求头**: ``` Authorization: Bearer {token} (可选) ``` **请求参数**: ``` worksId: 作品ID (路径参数) ``` **返回参数**: ```json { "code": 200, "msg": "success", "data": { "id": 作品ID, "title": "作品标题", "description": "作品描述", "type": "IMAGE", "coverUrl": "封面URL", "videoUrl": "视频URL", "imageUrls": ["图片URL1", "图片URL2"], "authorId": 作者ID, "authorName": "作者昵称", "authorAvatar": "作者头像", "likeCount": 点赞数, "collectCount": 收藏数, "commentCount": 评论数, "shareCount": 分享数, "isLiked": false, "isCollected": false, "createTime": "创建时间" } } ``` --- ### 3. 编辑作品 **接口路径**: `POST /api/front/works/update` **请求头**: ``` Authorization: Bearer {token} ``` **请求参数**: ```json { "id": 作品ID, "title": "作品标题", "description": "作品描述" } ``` **返回参数**: ```json { "code": 200, "msg": "success", "data": true } ``` **说明**: 仅作者可编辑 --- ### 4. 删除作品 **接口路径**: `POST /api/front/works/delete/{worksId}` **请求头**: ``` Authorization: Bearer {token} ``` **请求参数**: ``` worksId: 作品ID (路径参数) ``` **返回参数**: ```json { "code": 200, "msg": "success", "data": true } ``` **说明**: 仅作者可删除,逻辑删除 --- ### 5. 搜索作品 **接口路径**: `POST /api/front/works/search` **请求参数**: ```json { "keyword": "搜索关键词", "type": "IMAGE", "page": 1, "pageSize": 20 } ``` **返回参数**: ```json { "code": 200, "msg": "success", "data": { "list": [ { "id": 作品ID, "title": "作品标题", "coverUrl": "封面URL", "type": "IMAGE", "likeCount": 点赞数, "authorName": "作者昵称" } ], "total": 总数, "page": 当前页, "pageSize": 每页数量 } } ``` --- ### 6. 获取用户作品列表 **接口路径**: `GET /api/front/works/user/{userId}` **请求参数**: ``` userId: 用户ID (路径参数) page: 页码 (默认1) pageSize: 每页数量 (默认20) ``` **返回参数**: ```json { "code": 200, "msg": "success", "data": { "list": [ { "id": 作品ID, "title": "作品标题", "coverUrl": "封面URL", "type": "IMAGE", "likeCount": 点赞数 } ], "total": 总数 } } ``` --- ### 7. 点赞作品 **接口路径**: `POST /api/front/works/like/{worksId}` **请求头**: ``` Authorization: Bearer {token} ``` **请求参数**: ``` worksId: 作品ID (路径参数) ``` **返回参数**: ```json { "code": 200, "msg": "success", "data": true } ``` --- ### 8. 取消点赞 **接口路径**: `POST /api/front/works/unlike/{worksId}` **请求头**: ``` Authorization: Bearer {token} ``` **请求参数**: ``` worksId: 作品ID (路径参数) ``` **返回参数**: ```json { "code": 200, "msg": "success", "data": true } ``` --- ### 9. 收藏作品 **接口路径**: `POST /api/front/works/collect/{worksId}` **请求头**: ``` Authorization: Bearer {token} ``` **请求参数**: ``` worksId: 作品ID (路径参数) ``` **返回参数**: ```json { "code": 200, "msg": "success", "data": true } ``` --- ### 10. 取消收藏 **接口路径**: `POST /api/front/works/uncollect/{worksId}` **请求头**: ``` Authorization: Bearer {token} ``` **请求参数**: ``` worksId: 作品ID (路径参数) ``` **返回参数**: ```json { "code": 200, "msg": "success", "data": true } ``` --- ### 11. 我的点赞列表 **接口路径**: `GET /api/front/works/my/liked` **请求头**: ``` Authorization: Bearer {token} ``` **请求参数**: ``` page: 页码 (默认1) pageSize: 每页数量 (默认20) ``` **返回参数**: ```json { "code": 200, "msg": "success", "data": { "list": [ { "id": 作品ID, "title": "作品标题", "coverUrl": "封面URL", "type": "IMAGE", "likeCount": 点赞数 } ], "total": 总数 } } ``` --- ### 12. 我的收藏列表 **接口路径**: `GET /api/front/works/my/collected` **请求头**: ``` Authorization: Bearer {token} ``` **请求参数**: ``` page: 页码 (默认1) pageSize: 每页数量 (默认20) ``` **返回参数**: ```json { "code": 200, "msg": "success", "data": { "list": [ { "id": 作品ID, "title": "作品标题", "coverUrl": "封面URL", "type": "IMAGE", "collectCount": 收藏数 } ], "total": 总数 } } ``` --- ### 13. 分享作品 **接口路径**: `POST /api/front/works/share/{worksId}` **请求参数**: ``` worksId: 作品ID (路径参数) ``` **返回参数**: ```json { "code": 200, "msg": "success", "data": true } ``` **说明**: 增加分享次数统计 --- ### 14. 视频上传 **接口路径**: `POST /api/front/upload/work/video` **请求头**: ``` Authorization: Bearer {token} Content-Type: multipart/form-data ``` **请求参数**: ``` multipart: 视频文件 model: "works" pid: 0 ``` **返回参数**: ```json { "code": 200, "msg": "success", "data": { "url": "视频URL", "name": "文件名", "size": 文件大小 } } ``` --- ### 15. 图片上传 **接口路径**: `POST /api/front/upload/image` **请求头**: ``` Authorization: Bearer {token} Content-Type: multipart/form-data ``` **请求参数**: ``` multipart: 图片文件 model: "works" pid: 0 ``` **返回参数**: ```json { "code": 200, "msg": "success", "data": { "url": "图片URL", "name": "文件名", "size": 文件大小 } } ```