历史版本5 :OSS文件上传下载 返回文档
编辑时间:
内容长度:图片数:目录数:
修改原因:
1. 版本编辑
报表服务器版本 | JAR 包 | 插件版本 | App 版本 |
---|---|---|---|
10.0 | 2019-06-13 | 4.2 | 10.0 |
2. 描述编辑
在业务中,经常会有上传文件保存到服务器,然后再从另外的报表中查看附件的需求。如果是单机的话,我们可以选择直接使用上传下载文件插件,将文件上传到服务器本机即可。
但是,集群环境下这么做行不通,原因如下:当文件上传到服务器A的磁盘上的时候,服务器B无法获取到,就会导致下载附件的时候报找不到文件的错误。
本来上传下载文件插件还提供了上传文件到FTP,可以解决集群中多个节点文件存储的问题,然而该插件无法设置FTP中文件的下载。
我们使用一种将文件上传到云存储服务器上的方案,可以使用通用OSS配置和OSS文件上传下载插件。
注意1:OSS文件上传下载插件是依赖通用OSS配置插件的,因此记得先安装通用OSS配置插件。
注意2:该方案不仅在集群下能用,在单机下如果希望把文件存储到阿里云的OSS上,也可以使用。
3. 示例编辑
1、安装完通用OSS配置插件后,在决策平台的系统管理菜单下可以看到有OSS服务相关的配置
2、安装好 OSS文件上传下载 插件
3、在报表的填报属性中,添加一个自定义提交,选择提交类型为“上传至OSS”:
填好对应的值即可,其中“文件名”字段为可选值,为空的时候,上传到服务器上存储的为实际文件的值,该值不为空的时候,服务器上存储的就是设置的值。
4、要下载OSS中的文件,选择添加一个类型为“文件下载(OSS)”的超链接:
然后设置对应的值即可:
通过以上三步,就可以让集群很好的管理上传和下载文件了。
4.二次开发编辑
插件源码:https://git.fanruan.com/fanruan/demo-file-submit-oss
如果希望上传到其他的一些云存储服务器,比如华为OBS,亚马逊S3等,可以自行根据源码做少量修改即可。