Răsfoiți Sursa

fix 修复 使用缓冲流 导致上传异常问题 回滚错误提交 #35fac6c

疯狂的狮子Li 2 ani în urmă
părinte
comite
afac00de33

+ 4 - 0
ruoyi-oss/src/main/java/com/ruoyi/oss/core/OssClient.java

@@ -1,5 +1,6 @@
 package com.ruoyi.oss.core;
 
+import cn.hutool.core.io.IoUtil;
 import cn.hutool.core.util.IdUtil;
 import com.amazonaws.ClientConfiguration;
 import com.amazonaws.HttpMethod;
@@ -97,6 +98,9 @@ public class OssClient {
     }
 
     public UploadResult upload(InputStream inputStream, String path, String contentType) {
+        if (!(inputStream instanceof ByteArrayInputStream)) {
+            inputStream = new ByteArrayInputStream(IoUtil.readBytes(inputStream));
+        }
         try {
             ObjectMetadata metadata = new ObjectMetadata();
             metadata.setContentType(contentType);

+ 1 - 1
ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysOssServiceImpl.java

@@ -114,7 +114,7 @@ public class SysOssServiceImpl implements ISysOssService {
         OssClient storage = OssFactory.instance();
         UploadResult uploadResult;
         try {
-            uploadResult = storage.uploadSuffix(file.getInputStream(), suffix, file.getContentType());
+            uploadResult = storage.uploadSuffix(file.getBytes(), suffix, file.getContentType());
         } catch (IOException e) {
             throw new ServiceException(e.getMessage());
         }