mirror of https://github.com/apache/jclouds.git
Corrected request building/signing to specify ETag values in 'Content-MD5' HTTP header instead of the 'ETag' header, which is only used in responses
git-svn-id: http://jclouds.googlecode.com/svn/trunk@1619 3d8758e0-26b5-11de-8745-db77d3ebf521
This commit is contained in:
parent
03631f84d1
commit
d8557f6d89
|
@ -62,9 +62,10 @@ public class S3ObjectBinder implements EntityBinder {
|
|||
object.getMetadata().getContentEncoding());
|
||||
}
|
||||
|
||||
if (object.getMetadata().getETag() != null)
|
||||
request.getHeaders().put(HttpHeaders.ETAG,
|
||||
if (object.getMetadata().getETag() != null) {
|
||||
request.getHeaders().put("Content-MD5",
|
||||
HttpUtils.toBase64String(object.getMetadata().getETag()));
|
||||
}
|
||||
|
||||
request.getHeaders().putAll(object.getMetadata().getUserMetadata());
|
||||
}
|
||||
|
|
|
@ -53,8 +53,8 @@ import com.google.inject.name.Named;
|
|||
*/
|
||||
@Singleton
|
||||
public class RequestAuthorizeSignature implements HttpRequestFilter {
|
||||
private final String[] firstHeadersToSign = new String[] { HttpHeaders.ETAG,
|
||||
HttpHeaders.CONTENT_TYPE, HttpHeaders.DATE };
|
||||
private final String[] firstHeadersToSign = new String[] {
|
||||
"Content-MD5", HttpHeaders.CONTENT_TYPE, HttpHeaders.DATE };
|
||||
|
||||
private final String accessKey;
|
||||
private final String secretKey;
|
||||
|
|
|
@ -68,7 +68,7 @@ public class Utils {
|
|||
String lk = hashKey.toLowerCase();
|
||||
|
||||
// Ignore any headers that are not particularly interesting.
|
||||
if (lk.equals("content-type") || lk.equals("content-eTag") || lk.equals("date") ||
|
||||
if (lk.equals("content-type") || lk.equals("content-md5") || lk.equals("date") ||
|
||||
lk.startsWith(AMAZON_HEADER_PREFIX))
|
||||
{
|
||||
List s = (List)headers.get(hashKey);
|
||||
|
|
Loading…
Reference in New Issue