完整代码在此
完整代码在此
完整代码在此

一、功能

1、分片上传
2、断点续传
3、秒传

二、特点

1、不暴露minio敏感信息
2、针对文件每一个分片生成相应的上传地址
3、文件直接从浏览器上传到minio,不经过后台
4、部署简单,无须部署额外的类似于sts的服务

三、效果

1、上传页面
上传页面
2、前端上传日志
前端上传日志
3、minio上传日志
minio上传日志

四、详细方案

流程图

前端流程可参考:https://www.cnblogs.com/xiahj/p/vue-simple-uploader.html
不同之处在于:
1、根据文件分片生成上传地址
参考:https://github.com/singularityhub/sregistry/pull/298
上面这个方案是用python实现的。

在golang的sdk中,PutObject接口内部在上传文件时会对大文件进行分片,对于每一个分片都有一个requestMetadata.presignURL参数,将此参数设置为true的时候,将会生成一个对应的上传地址,使用此地址我们就可以在web页面将文件直接上传到minio。

Logo

前往低代码交流专区

更多推荐