minio oss插件
介绍
平台增强套件之一minio
MinIO 是一个基于Apache License v2.0开源协议的对象存储服务。它兼容亚马逊S3云存储服务接口,非常适合于存储大容量非结构化的数据,例如图片、视频、日志文件、备份数据和容器/虚拟机镜像等,而一个对象文件可以是任意大小,从几kb到最大5T不等。
插件安装,安装完之后,要重启gateway服务
联系商务
插件配置说明
- 打开存储桶管理进行数据维护,添加一个minIo的存储桶,存储类型选择minIo。(注意:存储空间标识要唯一)
- 打开apollo找到document服务,添加minio oss配置
- 如果更新了apollo中的minIo oss配置,需要清理缓存,否者不生效
注意事项:
- 存储空间标识 不能写成minio 或者miniO ,minio存储服务不允许这样命名,可以写minio1这种
- 设置号bucket,进行存储文件时,系统会根据空间标识创建对应的bucket。
插件使用
- 存储桶管理,默认要设置一个,不能多个。
- 功能附件上传
如果功能没有指定bucket,那么上传附件时,附件会寻找默认的bucket去存储
如果指定了,按照指定的bucket存储
- 代码中使用
系统提供常用api
- 上传文件
地址:/je/document/file
请求类型:POST
参数:
名称 | 标识 | 类型 | 是否必填 |
---|---|---|---|
存储空间标识 | bucket | string | 否,没有走默认 |
表名 | tableCode | string | 否 |
主键标识 | pkCode | string | 否 |
功能code | funcCode | string | 否 |
产品标识 | productCode | string | 否 |
文件 | files | file | 是 |
返回值:
{
"code": "1000",
"data": [
{
"fileKey": "Hph4QWM2yMriH5aT8FB",
"relName": "接口引擎.zip",
"suffix": "zip",
"hasThumbnail": false,
"fullUrl": null,
"size": 128,
"createUserName": null,
"createUserDeptName": null,
"createTime": "2024-05-11 10:41:53",
"createTimeStr": "2024-05-11 10:41:53",
"dicId": null,
"dicCode": null,
"dicName": null,
"remarks": null
}
],
"message": "操作成功",
"success": true,
"rows": null,
"totalCount": null
}
截图:
- 遍历文件
地址:/je/document/minio/listFilesMeta
请求类型:GET
参数:
名称 | 标识 | 类型 | 是否必填 |
---|---|---|---|
存储空间标识 | bucket | string | 是 |
返回值:
{
"code": "1000",
"data": [
{
"fileName": "document/",
"isDir": true,
"fileSize": 0,
"children": [
{
"fileName": "document/2024/",
"isDir": true,
"fileSize": 0,
"children": [
{
"fileName": "document/2024/0510/",
"isDir": true,
"fileSize": 0,
"children": [
{
"fileName": "document/2024/0510/im8LTTdbz42KnkGtEtZ.zip",
"isDir": false,
"fileSize": 124123
}
]
},
{
"fileName": "document/2024/0511/",
"isDir": true,
"fileSize": 0,
"children": [
{
"fileName": "document/2024/0511/PgbMKd5FhMExzfrD6ut.zip",
"isDir": false,
"fileSize": 59233
}
]
}
]
}
]
}
],
"message": "操作成功",
"success": true,
"rows": null,
"totalCount": null
}
截图:
- 获取文件下载地址
地址:/je/document/getUrl
请求类型:GET
参数:
名称 | 标识 | 类型 | 是否必填 |
---|---|---|---|
文件标识 | fileKey | string | 是 |
url地址有效期(秒) | duration | int | 否,默认3600秒 |
返回值:
{
"code": "1000",
"data": "http://127.0.0.1:9000/minio1//document/2024/0511/rE3da2fFMZEr6dpG12w/%E6%8E%A5%E5%8F%A3%E5%BC%95%E6%93%8E.zip?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=NIWJf8d1aU12uMxOCVnL%2F20240511%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20240511T022310Z&X-Amz-Expires=3599&X-Amz-SignedHeaders=host&X-Amz-Signature=599fa45027c32987738bbf84a3f08949884ebd27e39c520101137a9b20373519",
"message": "操作成功",
"success": true,
"rows": null,
"totalCount": null
}
截图:
- 下载文件
地址:/je/document/minio/getFile
请求类型:GET
参数:
名称 | 标识 | 类型 | 是否必填 |
---|---|---|---|
文件路径 | filePath | string 需要转移 | 是 |
存储空间标识 | bucket | string | 是 |
返回值:
file
截图:
最后编辑: 于春辉 文档更新时间: 2024-11-08 17:00 作者:于春辉