kopia lustrzana https://github.com/gaul/s3proxy
Correct issues with encoding of plus character
Also remove some questionable decoding.pull/139/merge
rodzic
e7bb6ddb47
commit
d6c81c9b64
|
@ -1176,7 +1176,8 @@ final class S3ProxyHandler extends AbstractHandler {
|
||||||
|
|
||||||
xml.writeStartElement("Contents");
|
xml.writeStartElement("Contents");
|
||||||
|
|
||||||
writeSimpleElement(xml, "Key", metadata.getName());
|
writeSimpleElement(xml, "Key", encodeBlob(encodingType,
|
||||||
|
metadata.getName()));
|
||||||
|
|
||||||
Date lastModified = metadata.getLastModified();
|
Date lastModified = metadata.getLastModified();
|
||||||
if (lastModified != null) {
|
if (lastModified != null) {
|
||||||
|
@ -2556,9 +2557,7 @@ final class S3ProxyHandler extends AbstractHandler {
|
||||||
"UTF-8");
|
"UTF-8");
|
||||||
for (String key : parameters) {
|
for (String key : parameters) {
|
||||||
// re-encode keys and values in AWS normalized form
|
// re-encode keys and values in AWS normalized form
|
||||||
key = URLDecoder.decode(key, charsetName);
|
String value = request.getParameter(key);
|
||||||
String value = URLDecoder.decode(request.getParameter(key),
|
|
||||||
charsetName);
|
|
||||||
queryParameters.add(AWS_URL_PARAMETER_ESCAPER.escape(key) +
|
queryParameters.add(AWS_URL_PARAMETER_ESCAPER.escape(key) +
|
||||||
"=" + AWS_URL_PARAMETER_ESCAPER.escape(value));
|
"=" + AWS_URL_PARAMETER_ESCAPER.escape(value));
|
||||||
}
|
}
|
||||||
|
|
|
@ -416,8 +416,8 @@ public final class S3AwsSdkTest {
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void testListSpecialCharacters() throws Exception {
|
public void testSpecialCharacters() throws Exception {
|
||||||
String prefix = "test_dir/special */";
|
String prefix = "special ~`!@#$%^&*()-_+=[]{}\\|;:'\"<>,./?";
|
||||||
String blobName = prefix + "foo";
|
String blobName = prefix + "foo";
|
||||||
ObjectMetadata metadata = new ObjectMetadata();
|
ObjectMetadata metadata = new ObjectMetadata();
|
||||||
metadata.setContentLength(BYTE_SOURCE.size());
|
metadata.setContentLength(BYTE_SOURCE.size());
|
||||||
|
|
Ładowanie…
Reference in New Issue