图片管理API接口说明

需积分: 0 0 下载量 180 浏览量 更新于2024-08-04 收藏 26KB DOCX 举报
本文档详细介绍了与图片管理相关的API接口,包括获取图片集合、获取单个图片、添加图片、删除图片以及获取缩略图的操作。 API接口1涉及到以下几个关键知识点: 1. **GET请求获取图片集合**:此接口用于获取图片集合,包括分页、排序和标签筛选功能。参数包括: - `PageNumber`:表示当前页数,默认为1。 - `PageSize`:每页显示的图片数量,默认值为`SERVER_PAGE_SIZE`,需根据实际服务器配置设定。 - `IsOrderByAddTimeDesc`:按添加时间降序排列,默认为TRUE。 - `LimitLabels`:可选参数,用于指定返回包含特定标签的图片。 2. **返回数据结构**:返回结果包括一个头信息`Head:NextUrl`,用于指向下一页的URL,以及一个图片列表数组。每个图片对象包含`Id`、`CreatedTime`、`Path`、`Height`、`Width`及`Label`(标签信息,包括名称、颜色和数量)。 3. **GET请求获取单个图片**:通过图片ID获取图片详情,返回的数据结构与获取图片集合中的单个图片对象相同。 4. **POST请求添加图片**:此接口用于向服务器添加图片,支持本地路径和远程文件上传。根据`Paths`和`ImageFiles`字段来区分处理方式。在添加过程中,会检查图片的MD5码以防止重复,并根据添加日期创建子目录存储图片。 5. **返回状态码203**:表示图片添加操作成功但有冲突,即服务器已存在相同MD5码的图片。 6. **DELETE请求删除图片**:根据图片ID删除图片,同时清理数据库和本地存储。如果删除后所在文件夹为空,也会删除该文件夹。如果图片在缓冲中,也会从缓冲中移除。 7. **获取缩略图**:通过GET请求获取指定路径的图片内容,系统会根据需求宽度进行处理。如果图片已在内存或固态磁盘缓冲中,且宽度匹配,直接返回;若宽度大于需求,压缩后再返回;如果宽度小于需求或缓冲未命中,从磁盘读取原始文件并处理后返回。 这些API接口对于构建一个图片管理系统至关重要,涵盖了图片的查询、添加、删除和缩略图生成等功能,提供了高效且灵活的图片操作服务。