SpringBoot+Vue+ElementUI+Mybatis+SpringSecurity编写OSS文件上传下载系统所遇到的问题记录和解决方案

前后端基本实现思路参考链接如下

https://www.jianshu.com/p/d2c21f46c8cf

个人前端实现思路

不使用vue脚手架,而是使用简单的html进行实现。将所需的JS和CSS文件下载到本地后引入
在这里插入图片描述

后端问题1

前端发送请求时响应为404,后端正常处理,原因是controller没有添加响应体,可将注解改为@RestController解决问题或者给单独的方法上方加上@ResponseBody

请求的跨域问题

解决方案参考https://blog.csdn.net/qq_43719932/article/details/113000563
其中代码行:corsConfiguration.addAllowedOrigin("");/允许访问的客户端域名/
需要改为:corsConfiguration.addAllowedOriginPattern("
");/允许访问的客户端域名/
否则会报错

获取用户目录

在这里插入图片描述
那么用户的下载目录就应该是
String usrDH = System.getProperty(“user.home”) + “/” + “Downloads”;

上传下载带进度条实现的方法和遇到的问题

实现思路参考链接https://blog.csdn.net/qq_42910468/article/details/109325375

1.上传的异步方法编写时记得调用OSS上传带进度条中的传文件输入流的方法
在这里插入图片描述
2.上传文件的监听类得稍许改动,OSS官方文档的写法不能达到理想效果

得将上传的监听类的文件总字节数设置为静态变量,再写个静态方法,在serviceImpl实现类中为上传文件的总大小赋值。
在这里插入图片描述

在这里插入图片描述
赋值这里有一个需要注意的点,不能用MultipartFile类的getBytes加.length()的方法来获取长度,而应该用.getSize。否则的话上传的文件过大会导致.getBytes方法存入一个巨大的byte数组,从而出现OOM问题,会报错。报java heap space的错。

3.上传文件前端代码实现思路
在这里插入图片描述
4.下载文件前端代码实现思路
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值