AWS SDK for C++

AWS SDK for C++ Version 1.11.888

Loading...
Searching...
No Matches
HttpRequest.h
1
6#pragma once
7
8#include <aws/core/Core_EXPORTS.h>
9
10#include <aws/core/http/URI.h>
11#include <aws/core/http/HttpTypes.h>
12#include <aws/core/utils/memory/AWSMemory.h>
13#include <aws/core/utils/memory/stl/AWSStreamFwd.h>
14#include <aws/core/utils/stream/ResponseStream.h>
15#include <aws/core/utils/UUID.h>
16#include <aws/core/utils/DateTime.h>
17#include <aws/crt/Optional.h>
18#include <aws/core/monitoring/HttpClientMetrics.h>
19#include <memory>
20#include <functional>
21
22namespace Aws
23{
24 namespace Crt
25 {
26 namespace Http
27 {
28 class HttpRequest;
29 }
30 }
31 namespace Utils
32 {
33 namespace Crypto
34 {
35 class Hash;
36 }
37 }
38 namespace Http
39 {
40 extern AWS_CORE_API const char DATE_HEADER[];
41 extern AWS_CORE_API const char AWS_DATE_HEADER[];
42 extern AWS_CORE_API const char AWS_SECURITY_TOKEN[];
43 extern AWS_CORE_API const char ACCEPT_HEADER[];
44 extern AWS_CORE_API const char ACCEPT_CHAR_SET_HEADER[];
45 extern AWS_CORE_API const char ACCEPT_ENCODING_HEADER[];
46 extern AWS_CORE_API const char AUTHORIZATION_HEADER[];
47 extern AWS_CORE_API const char AWS_AUTHORIZATION_HEADER[];
48 extern AWS_CORE_API const char COOKIE_HEADER[];
49 extern AWS_CORE_API const char DECODED_CONTENT_LENGTH_HEADER[];
50 extern AWS_CORE_API const char CONTENT_LENGTH_HEADER[];
51 extern AWS_CORE_API const char CONTENT_TYPE_HEADER[];
52 extern AWS_CORE_API const char CONTENT_ENCODING_HEADER[];
53 extern AWS_CORE_API const char TRANSFER_ENCODING_HEADER[];
54 extern AWS_CORE_API const char USER_AGENT_HEADER[];
55 extern AWS_CORE_API const char VIA_HEADER[];
56 extern AWS_CORE_API const char HOST_HEADER[];
57 extern AWS_CORE_API const char AMZ_TARGET_HEADER[];
58 extern AWS_CORE_API const char X_AMZ_EXPIRES_HEADER[];
59 extern AWS_CORE_API const char CONTENT_MD5_HEADER[];
60 extern AWS_CORE_API const char API_VERSION_HEADER[];
61 extern AWS_CORE_API const char AWS_TRAILER_HEADER[];
62 extern AWS_CORE_API const char SDK_INVOCATION_ID_HEADER[];
63 extern AWS_CORE_API const char SDK_REQUEST_HEADER[];
64 extern AWS_CORE_API const char SMITHY_PROTOCOL_HEADER[];
65 extern AWS_CORE_API const char X_AMZN_TRACE_ID_HEADER[];
66 extern AWS_CORE_API const char CHUNKED_VALUE[];
67 extern AWS_CORE_API const char AWS_CHUNKED_VALUE[];
68 extern AWS_CORE_API const char EXPECT_HEADER[];
69 extern AWS_CORE_API const char EXPECT_100_CONTINUE_VALUE[];
70 extern AWS_CORE_API const char X_AMZN_ERROR_TYPE[];
71 extern AWS_CORE_API const char X_AMZN_QUERY_MODE[];
72
73 class HttpRequest;
74 class HttpResponse;
75
79 typedef std::function<void(const HttpRequest*, HttpResponse*)> HeadersReceivedEventHandler;
83 typedef std::function<void(const HttpRequest*, HttpResponse*, long long)> DataReceivedEventHandler;
87 typedef std::function<void(const HttpRequest*, long long)> DataSentEventHandler;
91 typedef std::function<bool(const HttpRequest*)> ContinueRequestHandler;
92
99 };
100
104 class AWS_CORE_API HttpRequest
105 {
106 public:
110 HttpRequest(const URI& uri, HttpMethod method) :
111 m_uri(uri), m_method(method), m_isEvenStreamRequest(false)
112 {}
113
114 virtual ~HttpRequest() {}
115
123 virtual const Aws::String& GetHeaderValue(const char* headerName) const = 0;
125
128 virtual void SetHeaderValue(const char* headerName, const Aws::String& headerValue) = 0;
129 virtual void SetHeaderValue(const Aws::String& headerName, const Aws::String& headerValue) = 0;
131
135 virtual void DeleteHeader(const char* headerName) = 0;
139 virtual void AddContentBody(const std::shared_ptr<Aws::IOStream>& strContent) = 0;
143 virtual const std::shared_ptr<Aws::IOStream>& GetContentBody() const = 0;
147 virtual bool HasHeader(const char* name) const = 0;
151 virtual int64_t GetSize() const = 0;
159 virtual void SetResponseStreamFactory(const Aws::IOStreamFactory& factory) = 0;
163 inline URI& GetUri()
164 {
165 return m_uri;
166 }
170 const URI& GetUri() const { return m_uri; }
175 inline Aws::String GetURIString(bool includeQueryString = true) const
176 {
177 return m_uri.GetURIString(includeQueryString);
178 }
182 inline HttpMethod GetMethod() const
183 {
184 return m_method;
185 }
189 inline const Aws::String& GetQueryString() const
190 {
191 return m_uri.GetQueryString();
192 }
197 {
198 m_uri.CanonicalizeQueryString();
199 }
204 {
205 return m_uri.GetQueryStringParameters();
206 }
210 inline void AddQueryStringParameter(const char* key, const Aws::String& value)
211 {
212 m_uri.AddQueryStringParameter(key, value);
213 }
214
215 inline bool HasDate() const
216 {
217 return HasHeader(DATE_HEADER);
218 }
222 inline const Aws::String& GetDate() const
223 {
224 return GetHeaderValue(DATE_HEADER);
225 }
229 inline void SetDate(const Aws::String& value)
230 {
231 SetHeaderValue(DATE_HEADER, value);
232 }
233
234 inline bool HasAccept() const
235 {
236 return HasHeader(ACCEPT_HEADER);
237 }
241 inline const Aws::String& GetAccept() const
242 {
243 return GetHeaderValue(ACCEPT_HEADER);
244 }
248 inline void SetAccept(const Aws::String& value)
249 {
250 SetHeaderValue(ACCEPT_HEADER, value);
251 }
252
253 inline bool HasAcceptCharSet() const
254 {
255 return HasHeader(ACCEPT_CHAR_SET_HEADER);
256 }
260 inline const Aws::String& GetAcceptCharSet() const
261 {
262 return GetHeaderValue(ACCEPT_CHAR_SET_HEADER);
263 }
267 inline void SetAcceptCharSet(const Aws::String& value)
268 {
269 SetHeaderValue(ACCEPT_CHAR_SET_HEADER, value);
270 }
271
272 inline bool HasAcceptEncoding() const
273 {
274 return HasHeader(ACCEPT_ENCODING_HEADER);
275 }
279 inline const Aws::String& GetAcceptEncoding() const
280 {
281 return GetHeaderValue(ACCEPT_ENCODING_HEADER);
282 }
286 inline void SetAcceptEncoding(const Aws::String& value)
287 {
288 SetHeaderValue(ACCEPT_ENCODING_HEADER, value);
289 }
290
291 inline bool HasAuthorization() const
292 {
293 return HasHeader(AUTHORIZATION_HEADER);
294 }
298 inline const Aws::String& GetAuthorization() const
299 {
300 return GetHeaderValue(AUTHORIZATION_HEADER);
301 }
305 inline void SetAuthorization(const Aws::String& value)
306 {
307 SetHeaderValue(AUTHORIZATION_HEADER, value);
308 }
309
310 inline bool HasAwsAuthorization() const
311 {
312 return HasHeader(AWS_AUTHORIZATION_HEADER);
313 }
317 inline const Aws::String& GetAwsAuthorization() const
318 {
319 return GetHeaderValue(AWS_AUTHORIZATION_HEADER);
320 }
324 inline void SetAwsAuthorization(const Aws::String& value)
325 {
326 SetHeaderValue(AWS_AUTHORIZATION_HEADER, value);
327 }
328
329 inline bool HasAwsSessionToken() const
330 {
331 return HasHeader(AWS_SECURITY_TOKEN);
332 }
336 inline const Aws::String& GetAwsSessionToken() const
337 {
338 return GetHeaderValue(AWS_SECURITY_TOKEN);
339 }
343 inline void SetAwsSessionToken(const Aws::String& value)
344 {
345 SetHeaderValue(AWS_SECURITY_TOKEN, value);
346 }
347
348 inline bool HasCookie() const
349 {
350 return HasHeader(COOKIE_HEADER);
351 }
355 inline const Aws::String& GetCookie() const
356 {
357 return GetHeaderValue(COOKIE_HEADER);
358 }
362 inline void SetCookie(const Aws::String& value)
363 {
364 SetHeaderValue(COOKIE_HEADER, value);
365 }
366
367 inline bool HasContentLength() const
368 {
369 return HasHeader(CONTENT_LENGTH_HEADER);
370 }
374 inline const Aws::String& GetContentLength() const
375 {
376 return GetHeaderValue(CONTENT_LENGTH_HEADER);
377 }
381 inline void SetContentLength(const Aws::String& value)
382 {
383 SetHeaderValue(CONTENT_LENGTH_HEADER, value);
384 }
385
386 inline bool HasContentType() const
387 {
388 return HasHeader(CONTENT_TYPE_HEADER);
389 }
393 inline const Aws::String& GetContentType() const
394 {
395 return GetHeaderValue(CONTENT_TYPE_HEADER);
396 }
400 inline void SetContentType(const Aws::String& value)
401 {
402 SetHeaderValue(CONTENT_TYPE_HEADER, value);
403 }
404
408 inline bool HasContentEncoding() const { return HasHeader(CONTENT_ENCODING_HEADER); }
412 inline const Aws::String& GetContentEncoding() const { return GetHeaderValue(CONTENT_ENCODING_HEADER); }
416 inline void SetContentEncoding(const Aws::String& value) { SetHeaderValue(CONTENT_ENCODING_HEADER, value); }
417
418 inline bool HasTransferEncoding() const
419 {
420 return HasHeader(TRANSFER_ENCODING_HEADER);
421 }
425 inline const Aws::String& GetTransferEncoding() const
426 {
427 return GetHeaderValue(TRANSFER_ENCODING_HEADER);
428 }
432 inline void SetTransferEncoding(const Aws::String& value)
433 {
434 SetHeaderValue(TRANSFER_ENCODING_HEADER, value);
435 }
436
437 inline bool HasUserAgent() const
438 {
439 return HasHeader(USER_AGENT_HEADER);
440 }
444 inline const Aws::String& GetUserAgent() const
445 {
446 return GetHeaderValue(USER_AGENT_HEADER);
447 }
451 inline void SetUserAgent(const Aws::String& value)
452 {
453 SetHeaderValue(USER_AGENT_HEADER, value);
454 }
455
456 inline bool HasVia() const
457 {
458 return HasHeader(VIA_HEADER);
459 }
463 inline const Aws::String& GetVia() const
464 {
465 return GetHeaderValue(VIA_HEADER);
466 }
470 inline void SetVia(const Aws::String& value)
471 {
472 SetHeaderValue(VIA_HEADER, value);
473 }
474
478 inline bool HasApiVersion() const
479 {
480 return HasHeader(API_VERSION_HEADER);
481 }
482
486 inline const Aws::String& GetApiVersion() const
487 {
488 return GetHeaderValue(API_VERSION_HEADER);
489 }
493 inline void SetApiVersion(const Aws::String& value)
494 {
495 SetHeaderValue(API_VERSION_HEADER, value);
496 }
497
499
502 inline void SetHeadersReceivedEventHandler(const HeadersReceivedEventHandler& headersReceivedEventHandler) { m_onHeadersReceived = headersReceivedEventHandler; }
503 inline void SetHeadersReceivedEventHandler(HeadersReceivedEventHandler&& headersReceivedEventHandler) { m_onHeadersReceived = std::move(headersReceivedEventHandler); }
505
507
510 inline void SetDataReceivedEventHandler(const DataReceivedEventHandler& dataReceivedEventHandler) { m_onDataReceived = dataReceivedEventHandler; }
511 inline void SetDataReceivedEventHandler(DataReceivedEventHandler&& dataReceivedEventHandler) { m_onDataReceived = std::move(dataReceivedEventHandler); }
513
515
518 inline void SetDataSentEventHandler(const DataSentEventHandler& dataSentEventHandler) { m_onDataSent = dataSentEventHandler; }
519 inline void SetDataSentEventHandler(DataSentEventHandler&& dataSentEventHandler) { m_onDataSent = std::move(dataSentEventHandler); }
521
523
526 inline void SetContinueRequestHandle(const ContinueRequestHandler& continueRequestHandler) { m_continueRequest = continueRequestHandler; }
527 inline void SetContinueRequestHandle(ContinueRequestHandler&& continueRequestHandler) { m_continueRequest = std::move(continueRequestHandler); }
529
533 inline const HeadersReceivedEventHandler & GetHeadersReceivedEventHandler() const { return m_onHeadersReceived; }
537 inline const DataReceivedEventHandler& GetDataReceivedEventHandler() const { return m_onDataReceived; }
541 inline const DataSentEventHandler& GetDataSentEventHandler() const { return m_onDataSent; }
542
543 inline const ContinueRequestHandler& GetContinueRequestHandler() const { return m_continueRequest; }
544
548 inline const Aws::String& GetSigningAccessKey() const { return m_signingAccessKey; }
552 inline void SetSigningAccessKey(const Aws::String& accessKey) { m_signingAccessKey = accessKey; }
553
557 inline const Aws::String& GetSigningRegion() const { return m_signingRegion; }
561 inline void SetSigningRegion(const Aws::String& region) { m_signingRegion = region; }
562
566 inline const Aws::Crt::Optional<Aws::Utils::DateTime>& GetSigningTimestampOverride() const { return m_signingTimestampOverride; }
571 inline void SetSigningTimestampOverride(const Aws::Utils::DateTime& signingTime) { m_signingTimestampOverride = signingTime; }
572
578 virtual void AddRequestMetric(const Aws::String& key, int64_t value) { m_httpRequestMetrics.emplace(key, value); }
579
583 virtual void SetRequestMetrics(const Aws::Monitoring::HttpClientMetricsCollection& collection) { m_httpRequestMetrics = collection; }
584
588 virtual const Aws::Monitoring::HttpClientMetricsCollection& GetRequestMetrics() const { return m_httpRequestMetrics; }
589
596 Aws::String GetResolvedRemoteHost() const { return m_resolvedRemoteHost; }
597 void SetResolvedRemoteHost(const Aws::String& ip) { m_resolvedRemoteHost = ip; }
598
599 bool IsEventStreamRequest() const { return m_isEvenStreamRequest; }
600 void SetEventStreamRequest(bool eventStreamRequest) { m_isEvenStreamRequest = eventStreamRequest; }
601
602 bool HasEventStreamResponse() const { return m_hasEvenStreamResponse; }
603 void SetHasEventStreamResponse(bool hasEventStreamResponse) { m_hasEvenStreamResponse = hasEventStreamResponse; }
604
605 virtual std::shared_ptr<Aws::Crt::Http::HttpRequest> ToCrtHttpRequest();
606
607 void SetRequestHash(const Aws::String& algorithmName, const std::shared_ptr<Aws::Utils::Crypto::Hash>& hash)
608 {
609 m_requestHash = std::make_pair(algorithmName, hash);
610 }
611 const std::pair<Aws::String, std::shared_ptr<Aws::Utils::Crypto::Hash>>& GetRequestHash() const { return m_requestHash; }
612
613 void AddResponseValidationHash(const Aws::String& algorithmName, const std::shared_ptr<Aws::Utils::Crypto::Hash>& hash)
614 {
615 m_responseValidationHashes.emplace_back(algorithmName, hash);
616 }
618
619 inline void SetServiceSpecificParameters(const std::shared_ptr<ServiceSpecificParameters> &serviceSpecificParameters) { m_serviceSpecificParameters = serviceSpecificParameters; }
620
621 inline std::shared_ptr<ServiceSpecificParameters> GetServiceSpecificParameters() { return m_serviceSpecificParameters; }
622
623 private:
624 URI m_uri;
625 HttpMethod m_method;
626 bool m_isEvenStreamRequest = false;
627 bool m_hasEvenStreamResponse{false};
628 HeadersReceivedEventHandler m_onHeadersReceived;
629 DataReceivedEventHandler m_onDataReceived;
630 DataSentEventHandler m_onDataSent;
631 ContinueRequestHandler m_continueRequest;
632 Aws::String m_signingRegion;
633 Aws::Crt::Optional<Aws::Utils::DateTime> m_signingTimestampOverride;
634 Aws::String m_signingAccessKey;
635 Aws::String m_resolvedRemoteHost;
637 std::pair<Aws::String, std::shared_ptr<Aws::Utils::Crypto::Hash>> m_requestHash;
639 std::shared_ptr<ServiceSpecificParameters> m_serviceSpecificParameters;
640 };
641
642 } // namespace Http
643} // namespace Aws
std::shared_ptr< ServiceSpecificParameters > GetServiceSpecificParameters()
const Aws::String & GetQueryString() const
bool HasAwsSessionToken() const
bool HasContentLength() const
const ContinueRequestHandler & GetContinueRequestHandler() const
bool IsEventStreamRequest() const
HttpMethod GetMethod() const
QueryStringParameterCollection GetQueryStringParameters() const
bool HasAwsAuthorization() const
virtual void SetHeaderValue(const Aws::String &headerName, const Aws::String &headerValue)=0
void SetApiVersion(const Aws::String &value)
virtual void SetResponseStreamFactory(const Aws::IOStreamFactory &factory)=0
Aws::String GetResolvedRemoteHost() const
bool HasContentType() const
void SetSigningTimestampOverride(const Aws::Utils::DateTime &signingTime)
bool HasApiVersion() const
virtual HeaderValueCollection GetHeaders() const =0
const Aws::String & GetCookie() const
const URI & GetUri() const
const Aws::String & GetApiVersion() const
void SetRequestHash(const Aws::String &algorithmName, const std::shared_ptr< Aws::Utils::Crypto::Hash > &hash)
const Aws::Crt::Optional< Aws::Utils::DateTime > & GetSigningTimestampOverride() const
virtual void AddContentBody(const std::shared_ptr< Aws::IOStream > &strContent)=0
void SetSigningRegion(const Aws::String &region)
void SetContinueRequestHandle(const ContinueRequestHandler &continueRequestHandler)
void SetCookie(const Aws::String &value)
virtual const Aws::IOStreamFactory & GetResponseStreamFactory() const =0
const Aws::String & GetAwsSessionToken() const
const DataSentEventHandler & GetDataSentEventHandler() const
const DataReceivedEventHandler & GetDataReceivedEventHandler() const
virtual void DeleteHeader(const char *headerName)=0
const Aws::String & GetAwsAuthorization() const
void SetAwsSessionToken(const Aws::String &value)
bool HasContentEncoding() const
bool HasAcceptCharSet() const
virtual const Aws::String & GetHeaderValue(const char *headerName) const =0
virtual std::shared_ptr< Aws::Crt::Http::HttpRequest > ToCrtHttpRequest()
const Aws::String & GetTransferEncoding() const
const Aws::String & GetDate() const
HttpRequest(const URI &uri, HttpMethod method)
void SetUserAgent(const Aws::String &value)
void SetHeadersReceivedEventHandler(const HeadersReceivedEventHandler &headersReceivedEventHandler)
void SetDataReceivedEventHandler(DataReceivedEventHandler &&dataReceivedEventHandler)
void SetAuthorization(const Aws::String &value)
void SetVia(const Aws::String &value)
void SetDataReceivedEventHandler(const DataReceivedEventHandler &dataReceivedEventHandler)
Aws::String GetURIString(bool includeQueryString=true) const
const Aws::String & GetAuthorization() const
void SetContentType(const Aws::String &value)
const HeadersReceivedEventHandler & GetHeadersReceivedEventHandler() const
const Aws::String & GetContentLength() const
void SetAcceptEncoding(const Aws::String &value)
void SetHasEventStreamResponse(bool hasEventStreamResponse)
const Aws::Vector< std::pair< Aws::String, std::shared_ptr< Aws::Utils::Crypto::Hash > > > & GetResponseValidationHashes() const
const Aws::String & GetSigningAccessKey() const
const Aws::String & GetSigningRegion() const
const Aws::String & GetAccept() const
void SetDataSentEventHandler(DataSentEventHandler &&dataSentEventHandler)
void AddQueryStringParameter(const char *key, const Aws::String &value)
virtual const Aws::Monitoring::HttpClientMetricsCollection & GetRequestMetrics() const
void SetSigningAccessKey(const Aws::String &accessKey)
void SetResolvedRemoteHost(const Aws::String &ip)
void SetHeadersReceivedEventHandler(HeadersReceivedEventHandler &&headersReceivedEventHandler)
virtual void SetRequestMetrics(const Aws::Monitoring::HttpClientMetricsCollection &collection)
void SetDataSentEventHandler(const DataSentEventHandler &dataSentEventHandler)
const Aws::String & GetAcceptCharSet() const
bool HasUserAgent() const
const Aws::String & GetAcceptEncoding() const
const Aws::String & GetContentType() const
void SetContentLength(const Aws::String &value)
bool HasEventStreamResponse() const
void SetContentEncoding(const Aws::String &value)
bool HasAuthorization() const
virtual const std::shared_ptr< Aws::IOStream > & GetContentBody() const =0
void SetEventStreamRequest(bool eventStreamRequest)
virtual void AddRequestMetric(const Aws::String &key, int64_t value)
void SetContinueRequestHandle(ContinueRequestHandler &&continueRequestHandler)
void AddResponseValidationHash(const Aws::String &algorithmName, const std::shared_ptr< Aws::Utils::Crypto::Hash > &hash)
bool HasAcceptEncoding() const
void SetAwsAuthorization(const Aws::String &value)
virtual bool HasHeader(const char *name) const =0
bool HasTransferEncoding() const
const Aws::String & GetVia() const
virtual int64_t GetSize() const =0
void SetServiceSpecificParameters(const std::shared_ptr< ServiceSpecificParameters > &serviceSpecificParameters)
const std::pair< Aws::String, std::shared_ptr< Aws::Utils::Crypto::Hash > > & GetRequestHash() const
const Aws::String & GetUserAgent() const
void SetAccept(const Aws::String &value)
void SetTransferEncoding(const Aws::String &value)
const Aws::String & GetContentEncoding() const
virtual void SetHeaderValue(const char *headerName, const Aws::String &headerValue)=0
void SetDate(const Aws::String &value)
void SetAcceptCharSet(const Aws::String &value)
std::function< void(const HttpRequest *, HttpResponse *)> HeadersReceivedEventHandler
Definition HttpRequest.h:79
AWS_CORE_API const char ACCEPT_CHAR_SET_HEADER[]
AWS_CORE_API const char USER_AGENT_HEADER[]
AWS_CORE_API const char SDK_REQUEST_HEADER[]
std::function< void(const HttpRequest *, HttpResponse *, long long)> DataReceivedEventHandler
Definition HttpRequest.h:83
AWS_CORE_API const char AWS_AUTHORIZATION_HEADER[]
AWS_CORE_API const char CHUNKED_VALUE[]
AWS_CORE_API const char ACCEPT_ENCODING_HEADER[]
AWS_CORE_API const char SMITHY_PROTOCOL_HEADER[]
Aws::MultiMap< Aws::String, Aws::String > QueryStringParameterCollection
Definition URI.h:32
AWS_CORE_API const char EXPECT_100_CONTINUE_VALUE[]
std::function< void(const HttpRequest *, long long)> DataSentEventHandler
Definition HttpRequest.h:87
AWS_CORE_API const char DECODED_CONTENT_LENGTH_HEADER[]
AWS_CORE_API const char CONTENT_LENGTH_HEADER[]
AWS_CORE_API const char X_AMZN_TRACE_ID_HEADER[]
AWS_CORE_API const char AUTHORIZATION_HEADER[]
AWS_CORE_API const char CONTENT_ENCODING_HEADER[]
AWS_CORE_API const char DATE_HEADER[]
AWS_CORE_API const char AWS_SECURITY_TOKEN[]
AWS_CORE_API const char API_VERSION_HEADER[]
AWS_CORE_API const char AWS_CHUNKED_VALUE[]
AWS_CORE_API const char CONTENT_MD5_HEADER[]
AWS_CORE_API const char X_AMZN_ERROR_TYPE[]
std::function< bool(const HttpRequest *)> ContinueRequestHandler
Definition HttpRequest.h:91
AWS_CORE_API const char VIA_HEADER[]
AWS_CORE_API const char ACCEPT_HEADER[]
AWS_CORE_API const char AWS_DATE_HEADER[]
AWS_CORE_API const char AMZ_TARGET_HEADER[]
AWS_CORE_API const char AWS_TRAILER_HEADER[]
AWS_CORE_API const char CONTENT_TYPE_HEADER[]
AWS_CORE_API const char TRANSFER_ENCODING_HEADER[]
AWS_CORE_API const char HOST_HEADER[]
Aws::Map< Aws::String, Aws::String > HeaderValueCollection
Definition HttpTypes.h:56
AWS_CORE_API const char X_AMZ_EXPIRES_HEADER[]
AWS_CORE_API const char X_AMZN_QUERY_MODE[]
AWS_CORE_API const char COOKIE_HEADER[]
AWS_CORE_API const char SDK_INVOCATION_ID_HEADER[]
AWS_CORE_API const char EXPECT_HEADER[]
Aws::Map< Aws::String, int64_t > HttpClientMetricsCollection
std::map< K, V, std::less< K >, Aws::Allocator< std::pair< const K, V > > > Map
Definition AWSMap.h:20
std::function< Aws::IOStream *(void) > IOStreamFactory
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Definition AWSString.h:97
std::vector< T, Aws::Allocator< T > > Vector
Definition AWSVector.h:17
Aws::Map< Aws::String, Aws::String > parameterMap
Definition HttpRequest.h:98