- 完成REQ-010-17(性能优化和限流处理)的所有6个阶段 - 创建ADR文档:0026-performance-optimization.md - 创建Prompt文档:027-performance-optimization.md - 创建会话记录:20260119-performance-optimization.md - 创建变更记录:20260119-performance-optimization.md - 创建复盘报告:20260119-performance-optimization-retro.md - 更新index.md和CHANGELOG.md - 完成REQ-010-2(基础实体类和Mapper创建)的前3个阶段 - 更新ADR文档:0011-entity-mapper-create.md - 创建Prompt文档:002-entity-mapper-create.md - 更新index.md 所有文档均按照SSOT方法论创建,包括需求定义、架构决策、提示词资产化、执行会话、变更记录和闭环复盘。
2.8 KiB
2.8 KiB
FileController 接口文档
概述
FileController 提供统一的文件存储服务接口,支持多种存储类型(local、minio、aliyun-oss 等),包括文件上传、下载、预览、分片上传等功能。
接口列表
基础接口
| 接口名称 | 接口路径 | 请求方法 | 说明 |
|---|---|---|---|
| 获取所有可用存储渠道及其client列表 | /file/client-list | GET | 获取系统可用的存储渠道列表 |
| 统一上传接口 | /file/upload /file/{storageType}/{bucketName}/upload |
POST | 上传文件到指定存储 |
| 统一下载接口 | /file/download /file/{storageType}/{bucketName}/download |
GET | 从指定存储下载文件 |
| 统一预览接口 | /file/preview /file/{storageType}/{bucketName}/preview |
GET | 在线预览文件(支持匿名访问) |
| 本地资源通用下载 | /file/resource | GET | 下载本地资源文件(支持匿名访问) |
分片上传接口
| 接口名称 | 接口路径 | 请求方法 | 说明 |
|---|---|---|---|
| 初始化分片上传 | /file/initUpload | POST | 初始化分片上传,获取 uploadId |
| 上传文件分片 | /file/uploadChunk | POST | 上传文件的一个分片 |
| 完成分片上传并合并文件 | /file/completeUpload | POST | 完成分片上传并合并文件 |
存储类型
系统支持以下存储类型:
- local: 本地文件系统存储
- minio: MinIO 对象存储
- aliyun-oss: 阿里云 OSS 对象存储
使用流程
普通文件上传流程
分片上传流程
文件下载流程
- 调用 统一下载接口 下载文件
- 浏览器会自动触发文件下载
文件预览流程
- 调用 统一预览接口 预览文件
- 浏览器会根据文件类型进行在线预览
权限说明
注意事项
- 文件路径格式为:upload/{timestamp}_{originalFilename}
- 分片上传适用于大文件(通常大于 100MB)
- 分片序号必须从 1 开始,连续递增
- 需要妥善保存 uploadId 和所有分片的 ETag
- 预览接口会自动识别文件类型
相关文档
- SysFileInfoController 接口文档 - 文件信息管理接口