From 403cff15c091c695f91ff5d2827e316aab69501c Mon Sep 17 00:00:00 2001 From: hy001 Date: Fri, 15 May 2026 11:52:55 +0800 Subject: [PATCH] fix: stream tencent cos uploads --- .../external/app/oss/TencentCosStorageService.java | 10 ++-------- 1 file changed, 2 insertions(+), 8 deletions(-) diff --git a/rc-service/rc-service-external/external-application/src/main/java/com/red/circle/external/app/oss/TencentCosStorageService.java b/rc-service/rc-service-external/external-application/src/main/java/com/red/circle/external/app/oss/TencentCosStorageService.java index ec2debea..797025b1 100644 --- a/rc-service/rc-service-external/external-application/src/main/java/com/red/circle/external/app/oss/TencentCosStorageService.java +++ b/rc-service/rc-service-external/external-application/src/main/java/com/red/circle/external/app/oss/TencentCosStorageService.java @@ -14,8 +14,6 @@ import org.slf4j.LoggerFactory; import org.springframework.stereotype.Service; import org.springframework.util.StringUtils; -import java.io.ByteArrayInputStream; -import java.io.IOException; import java.io.InputStream; import java.net.URI; import java.util.UUID; @@ -48,18 +46,14 @@ public class TencentCosStorageService { public void upload(String key, InputStream inputStream, long contentLength, String contentType) { COSClient client = buildClient(); try { - byte[] data = inputStream.readAllBytes(); ObjectMetadata metadata = new ObjectMetadata(); - metadata.setContentLength(data.length); + metadata.setContentLength(contentLength); if (StringUtils.hasText(contentType)) { metadata.setContentType(contentType); } client.putObject( new PutObjectRequest( - properties.getBucketName(), key, new ByteArrayInputStream(data), metadata)); - } catch (IOException e) { - log.error("tencent cos read upload stream failed key={}", key, e); - throw new IllegalStateException("read upload stream failed", e); + properties.getBucketName(), key, inputStream, metadata)); } catch (Exception e) { log.error("tencent cos upload failed key={}", key, e); throw e;