em_aws 0.1.9 → 0.1.10
Sign up to get free protection for your applications and to get access to all the features.
- data/lib/aws/core/http/em_http_handler.rb +16 -1
- data/lib/em_aws/version.rb +1 -1
- metadata +1 -1
@@ -117,12 +117,27 @@ module AWS
|
|
117
117
|
begin
|
118
118
|
http_response = fetch_response(url,method,opts)
|
119
119
|
response.status = http_response.response_header.status.to_i
|
120
|
-
response.headers = http_response.response_header.raw.to_hash
|
120
|
+
response.headers = to_aws_headers(http_response.response_header.raw.to_hash)
|
121
121
|
response.body = http_response.response if response.status < 300
|
122
122
|
rescue *AWS::Core::Http::NetHttpHandler::NETWORK_ERRORS
|
123
123
|
response.network_error = true
|
124
124
|
end
|
125
125
|
end
|
126
|
+
|
127
|
+
# AWS needs all headers downcased, and for some reason x-amz-expiration and
|
128
|
+
# x-amz-restore need to be arrays
|
129
|
+
def to_aws_headers(response_headers)
|
130
|
+
aws_headers = {}
|
131
|
+
response_headers.each_pair do |k,v|
|
132
|
+
key = k.downcase
|
133
|
+
if (key == "x-amz-expiration" || key == 'x-amz-restore')
|
134
|
+
aws_headers[key] = [v]
|
135
|
+
else
|
136
|
+
aws_headers[key] = v
|
137
|
+
end
|
138
|
+
end
|
139
|
+
response_headers.merge(aws_headers)
|
140
|
+
end
|
126
141
|
end
|
127
142
|
end
|
128
143
|
end
|
data/lib/em_aws/version.rb
CHANGED