[ 
https://issues.apache.org/jira/browse/HDDS-8878?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

GuoHao updated HDDS-8878:
-------------------------
    Description: 
When renaming a file with s3 presign url, special characters appear in garbled 
code

Presign url like this:
{code:java}
http://s3endpoint/bucketname/keyname?response-content-disposition=attachment%3B%20filename%20%3D%22%E6%95%B0%E6%8D%AE%E4%BA%91%E7%9B%98%E5%8A%9F%E8%83%BD%E8%A7%A3%E8%AF%BB.pdf%22&X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Date=20230616T093651Z&X-Amz-SignedHeaders=host&X-Amz-Expires=359999&X-Amz-Credential=ASU4JITCHORSVMEOQY9X%2F20230616%2Fozone-test%2Fs3%2Faws4_request&X-Amz-Signature=44962e707bf044e76379f445b03afefa3f31fdf72bd5d0dfd0f1c9cfd8e3ede7
 {code}
 

I generated the download link via s3 presign url and renamed it via 
response-content-disposition, if the target name has something like other 
non-English content, it appears garbled.

 
{code:java}
GeneratePresignedUrlRequest generatePresignedUrlRequest =
    new GeneratePresignedUrlRequest(bucketName, key);

generatePresignedUrlRequest
    .setExpiration(new Date(System.currentTimeMillis() + 3600 * 100000));

ResponseHeaderOverrides responseHeaderOverrides =
    new ResponseHeaderOverrides();
responseHeaderOverrides.setContentDisposition("attachment; filename 
=\"测试.pdf\"");


generatePresignedUrlRequest.setResponseHeaders(responseHeaderOverrides);

final URL url = s3.generatePresignedUrl(generatePresignedUrlRequest);

System.out.println("get url:" + url); {code}
 

 

 

 

 

 

 

 

 

 

  was:
When renaming a file with s3 presign url, special characters appear in garbled 
code

Presign url like this:

[http://s3endpoint/bucketname/keyname?response-content-disposition=attachment%3B%20filename%20%3D%22%E6%95%B0%E6%8D%AE%E4%BA%91%E7%9B%98%E5%8A%9F%E8%83%BD%E8%A7%A3%E8%AF%BB.pdf%22&X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Date=20230616T093651Z&X-Amz-SignedHeaders=host&X-Amz-Expires=359999&X-Amz-Credential=ASU4JITCHORSVMEOQY9X%2F20230616%2Fozone-test%2Fs3%2Faws4_request&X-Amz-Signature=44962e707bf044e76379f445b03afefa3f31fdf72bd5d0dfd0f1c9cfd8e3ede7]

 

I generated the download link via s3 presign url and renamed it via 
response-content-disposition, if the target name has something like other 
non-English content, it appears garbled.

 
{code:java}
GeneratePresignedUrlRequest generatePresignedUrlRequest =
    new GeneratePresignedUrlRequest(bucketName, key);

generatePresignedUrlRequest
    .setExpiration(new Date(System.currentTimeMillis() + 3600 * 100000));

ResponseHeaderOverrides responseHeaderOverrides =
    new ResponseHeaderOverrides();
responseHeaderOverrides.setContentDisposition("attachment; filename 
=\"测试.pdf\"");


generatePresignedUrlRequest.setResponseHeaders(responseHeaderOverrides);

final URL url = s3.generatePresignedUrl(generatePresignedUrlRequest);

System.out.println("get url:" + url); {code}
 

 

 

 

 

 

 

 

 

 


> When renaming a file with s3 presign url, special characters appear in 
> garbled code
> -----------------------------------------------------------------------------------
>
>                 Key: HDDS-8878
>                 URL: https://issues.apache.org/jira/browse/HDDS-8878
>             Project: Apache Ozone
>          Issue Type: Bug
>            Reporter: GuoHao
>            Assignee: GuoHao
>            Priority: Minor
>
> When renaming a file with s3 presign url, special characters appear in 
> garbled code
> Presign url like this:
> {code:java}
> http://s3endpoint/bucketname/keyname?response-content-disposition=attachment%3B%20filename%20%3D%22%E6%95%B0%E6%8D%AE%E4%BA%91%E7%9B%98%E5%8A%9F%E8%83%BD%E8%A7%A3%E8%AF%BB.pdf%22&X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Date=20230616T093651Z&X-Amz-SignedHeaders=host&X-Amz-Expires=359999&X-Amz-Credential=ASU4JITCHORSVMEOQY9X%2F20230616%2Fozone-test%2Fs3%2Faws4_request&X-Amz-Signature=44962e707bf044e76379f445b03afefa3f31fdf72bd5d0dfd0f1c9cfd8e3ede7
>  {code}
>  
> I generated the download link via s3 presign url and renamed it via 
> response-content-disposition, if the target name has something like other 
> non-English content, it appears garbled.
>  
> {code:java}
> GeneratePresignedUrlRequest generatePresignedUrlRequest =
>     new GeneratePresignedUrlRequest(bucketName, key);
> generatePresignedUrlRequest
>     .setExpiration(new Date(System.currentTimeMillis() + 3600 * 100000));
> ResponseHeaderOverrides responseHeaderOverrides =
>     new ResponseHeaderOverrides();
> responseHeaderOverrides.setContentDisposition("attachment; filename 
> =\"测试.pdf\"");
> generatePresignedUrlRequest.setResponseHeaders(responseHeaderOverrides);
> final URL url = s3.generatePresignedUrl(generatePresignedUrlRequest);
> System.out.println("get url:" + url); {code}
>  
>  
>  
>  
>  
>  
>  
>  
>  
>  



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to