diff options
| author | chrislu <chris.lu@gmail.com> | 2022-10-29 17:54:30 -0700 |
|---|---|---|
| committer | chrislu <chris.lu@gmail.com> | 2022-10-29 17:54:30 -0700 |
| commit | 8b9957d4616f9c6d416552a1db9fbd83c97c64f4 (patch) | |
| tree | bc69723a00309dcd7b8e2bb229105ddd503b927e /weed/s3api/s3api_object_copy_handlers.go | |
| parent | 0d9f2f9e7a3a4cda273ef1d057c7f2b052b985d9 (diff) | |
| download | seaweedfs-8b9957d4616f9c6d416552a1db9fbd83c97c64f4.tar.xz seaweedfs-8b9957d4616f9c6d416552a1db9fbd83c97c64f4.zip | |
add back "/" prefix if it is missing in object
fix https://github.com/seaweedfs/seaweedfs/issues/3737
Diffstat (limited to 'weed/s3api/s3api_object_copy_handlers.go')
| -rw-r--r-- | weed/s3api/s3api_object_copy_handlers.go | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/weed/s3api/s3api_object_copy_handlers.go b/weed/s3api/s3api_object_copy_handlers.go index 0e6c5ab89..83120ef07 100644 --- a/weed/s3api/s3api_object_copy_handlers.go +++ b/weed/s3api/s3api_object_copy_handlers.go @@ -81,9 +81,9 @@ func (s3a *S3ApiServer) CopyObjectHandler(w http.ResponseWriter, r *http.Request } dstUrl := fmt.Sprintf("http://%s%s/%s%s", - s3a.option.Filer.ToHttpAddress(), s3a.option.BucketsPath, dstBucket, urlPathEscape(dstObject)) + s3a.option.Filer.ToHttpAddress(), s3a.option.BucketsPath, dstBucket, urlEscapeObject(dstObject)) srcUrl := fmt.Sprintf("http://%s%s/%s%s", - s3a.option.Filer.ToHttpAddress(), s3a.option.BucketsPath, srcBucket, urlPathEscape(srcObject)) + s3a.option.Filer.ToHttpAddress(), s3a.option.BucketsPath, srcBucket, urlEscapeObject(srcObject)) _, _, resp, err := util.DownloadFile(srcUrl, s3a.maybeGetFilerJwtAuthorizationToken(false)) if err != nil { @@ -172,7 +172,7 @@ func (s3a *S3ApiServer) CopyObjectPartHandler(w http.ResponseWriter, r *http.Req dstUrl := fmt.Sprintf("http://%s%s/%s/%04d.part", s3a.option.Filer.ToHttpAddress(), s3a.genUploadsFolder(dstBucket), uploadID, partID) srcUrl := fmt.Sprintf("http://%s%s/%s%s", - s3a.option.Filer.ToHttpAddress(), s3a.option.BucketsPath, srcBucket, urlPathEscape(srcObject)) + s3a.option.Filer.ToHttpAddress(), s3a.option.BucketsPath, srcBucket, urlEscapeObject(srcObject)) resp, dataReader, err := util.ReadUrlAsReaderCloser(srcUrl, s3a.maybeGetFilerJwtAuthorizationToken(false), rangeHeader) if err != nil { |
