From 91ce2e89493e588f20910c1089b2d7020ecef94b Mon Sep 17 00:00:00 2001 From: jeffreykzli Date: Fri, 13 Dec 2024 17:55:28 +0800 Subject: [PATCH 1/3] update kms version --- pom.xml | 4 ++-- src/main/java/com/qcloud/cos/COS.java | 1 - 2 files changed, 2 insertions(+), 3 deletions(-) diff --git a/pom.xml b/pom.xml index 8a68a013..9635d3bf 100644 --- a/pom.xml +++ b/pom.xml @@ -4,7 +4,7 @@ 4.0.0 com.qcloud cos_api - 5.6.238 + 5.6.238.2 jar cos-java-sdk java sdk for qcloud cos @@ -86,7 +86,7 @@ com.tencentcloudapi tencentcloud-sdk-java-kms - 3.1.213 + 3.1.1138 log4j diff --git a/src/main/java/com/qcloud/cos/COS.java b/src/main/java/com/qcloud/cos/COS.java index eb7414e9..c0f4763e 100644 --- a/src/main/java/com/qcloud/cos/COS.java +++ b/src/main/java/com/qcloud/cos/COS.java @@ -78,7 +78,6 @@ import com.qcloud.cos.model.fetch.PutAsyncFetchTaskRequest; import com.qcloud.cos.model.fetch.PutAsyncFetchTaskResult; import com.qcloud.cos.model.inventory.InventoryConfiguration; -import com.squareup.okhttp.internal.http.HttpMethod; public interface COS extends COSDirectSpi { From 5d7a3e07aa120d349f0183a316639bd04c3f8e15 Mon Sep 17 00:00:00 2001 From: jeffreykzli Date: Fri, 27 Dec 2024 18:06:05 +0800 Subject: [PATCH 2/3] populateRequestMetadata when doing preflight --- pom.xml | 2 +- src/main/java/com/qcloud/cos/COSClient.java | 3 ++- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/pom.xml b/pom.xml index 9635d3bf..9579ac9c 100644 --- a/pom.xml +++ b/pom.xml @@ -4,7 +4,7 @@ 4.0.0 com.qcloud cos_api - 5.6.238.2 + 5.6.238.3 jar cos-java-sdk java sdk for qcloud cos diff --git a/src/main/java/com/qcloud/cos/COSClient.java b/src/main/java/com/qcloud/cos/COSClient.java index 7f058159..b227c6d2 100644 --- a/src/main/java/com/qcloud/cos/COSClient.java +++ b/src/main/java/com/qcloud/cos/COSClient.java @@ -5550,8 +5550,9 @@ private void preflightObj(PutObjectRequest putObjectRequest) throws CosClientExc request.setEndpoint(putObjectRequest.getFixedEndpointAddr()); } request.addParameter("preflight", null); + ObjectMetadata metadata = putObjectRequest.getMetadata(); + populateRequestMetadata(request, metadata); request.addHeader("x-cos-next-action", "PutObject"); - invoke(request, voidCosResponseHandler); } } From ff8e08fbb542ea35e35caa8624bbf8b998d58e27 Mon Sep 17 00:00:00 2001 From: jeffreykzli Date: Thu, 2 Jan 2025 16:17:13 +0800 Subject: [PATCH 3/3] populate request header when doing preflight --- pom.xml | 2 +- src/main/java/com/qcloud/cos/COSClient.java | 10 +++++++++- 2 files changed, 10 insertions(+), 2 deletions(-) diff --git a/pom.xml b/pom.xml index c9645723..b3a0eb16 100644 --- a/pom.xml +++ b/pom.xml @@ -4,7 +4,7 @@ 4.0.0 com.qcloud cos_api - 5.6.238.3 + 5.6.240 jar cos-java-sdk java sdk for qcloud cos diff --git a/src/main/java/com/qcloud/cos/COSClient.java b/src/main/java/com/qcloud/cos/COSClient.java index b227c6d2..5a1f2dff 100644 --- a/src/main/java/com/qcloud/cos/COSClient.java +++ b/src/main/java/com/qcloud/cos/COSClient.java @@ -5545,13 +5545,21 @@ private void preflightObj(PutObjectRequest putObjectRequest) throws CosClientExc String reqMsg = String.format("will do preflight request for put object[%s] to the bucket[%s]", key, bucketName); log.debug(reqMsg); CosServiceRequest serviceRequest = new CosServiceRequest(); + Map customHeaders = putObjectRequest.getCustomRequestHeaders(); + if (customHeaders != null) { + for (Map.Entry e : customHeaders.entrySet()) { + serviceRequest.putCustomRequestHeader(e.getKey(), e.getValue()); + } + } CosHttpRequest request = createRequest(bucketName, key, serviceRequest, HttpMethodName.HEAD); if (putObjectRequest.getFixedEndpointAddr() != null) { request.setEndpoint(putObjectRequest.getFixedEndpointAddr()); } request.addParameter("preflight", null); ObjectMetadata metadata = putObjectRequest.getMetadata(); - populateRequestMetadata(request, metadata); + if (metadata != null) { + populateRequestMetadata(request, metadata); + } request.addHeader("x-cos-next-action", "PutObject"); invoke(request, voidCosResponseHandler); }