AWS SDK for C++  0.12.9
AWS SDK for C++
Namespaces | Classes | Typedefs | Functions | Variables
Aws::Http Namespace Reference

Namespaces

 HttpMethodMapper
 
 SchemeMapper
 
 Standard
 

Classes

class  CurlHandleContainer
 
class  CurlHttpClient
 
class  HttpClient
 
class  HttpClientFactory
 
class  HttpRequest
 
class  HttpResponse
 
class  URI
 
class  WinConnectionPoolMgr
 
class  WinHttpConnectionPoolMgr
 
class  WinHttpSyncHttpClient
 
class  WinINetConnectionPoolMgr
 
class  WinINetSyncHttpClient
 
class  WinSyncHttpClient
 

Typedefs

using PlatformHttpClient = CurlHttpClient
 
typedef std::function< void(const HttpRequest *, HttpResponse *, long long)> DataReceivedEventHandler
 
typedef std::function< void(const HttpRequest *, long long)> DataSentEventHandler
 
typedef std::pair< Aws::String, Aws::StringHeaderValuePair
 
typedef Aws::Map< Aws::String, Aws::StringHeaderValueCollection
 
typedef Aws::Map< Aws::String, Aws::StringQueryStringParameterCollection
 

Functions

AWS_CORE_API void SetInitCleanupCurlFlag (bool initCleanupFlag)
 
AWS_CORE_API void InitHttp ()
 
AWS_CORE_API void CleanupHttp ()
 
AWS_CORE_API void SetHttpClientFactory (const std::shared_ptr< HttpClientFactory > &factory)
 
AWS_CORE_API std::shared_ptr< HttpClientCreateHttpClient (const Aws::Client::ClientConfiguration &clientConfiguration)
 
AWS_CORE_API std::shared_ptr< HttpRequestCreateHttpRequest (const Aws::String &uri, HttpMethod method, const Aws::IOStreamFactory &streamFactory)
 
AWS_CORE_API std::shared_ptr< HttpRequestCreateHttpRequest (const URI &uri, HttpMethod method, const Aws::IOStreamFactory &streamFactory)
 

Variables

AWS_CORE_API const char * DATE_HEADER
 
AWS_CORE_API const char * AWS_DATE_HEADER
 
AWS_CORE_API const char * AWS_SECURITY_TOKEN
 
AWS_CORE_API const char * ACCEPT_HEADER
 
AWS_CORE_API const char * ACCEPT_CHAR_SET_HEADER
 
AWS_CORE_API const char * ACCEPT_ENCODING_HEADER
 
AWS_CORE_API const char * AUTHORIZATION_HEADER
 
AWS_CORE_API const char * AWS_AUTHORIZATION_HEADER
 
AWS_CORE_API const char * COOKIE_HEADER
 
AWS_CORE_API const char * CONTENT_LENGTH_HEADER
 
AWS_CORE_API const char * CONTENT_TYPE_HEADER
 
AWS_CORE_API const char * USER_AGENT_HEADER
 
AWS_CORE_API const char * VIA_HEADER
 
AWS_CORE_API const char * HOST_HEADER
 
AWS_CORE_API const char * AMZ_TARGET_HEADER
 
AWS_CORE_API const char * X_AMZ_EXPIRES_HEADER
 
AWS_CORE_API const char * CONTENT_MD5_HEADER
 
AWS_CORE_API const char * SEPARATOR
 
static const uint16_t HTTP_DEFAULT_PORT = 80
 
static const uint16_t HTTPS_DEFAULT_PORT = 443
 

Typedef Documentation

typedef std::function<void(const HttpRequest*, HttpResponse*, long long)> Aws::Http::DataReceivedEventHandler

closure type for recieving notifications that data has been recieved.

Definition at line 51 of file HttpRequest.h.

typedef std::function<void(const HttpRequest*, long long)> Aws::Http::DataSentEventHandler

closure type for receiving notifications that data has been sent.

Definition at line 60 of file HttpRequest.h.

Definition at line 63 of file HttpTypes.h.

Definition at line 62 of file HttpTypes.h.

Definition at line 70 of file CurlHttpClient.h.

Definition at line 34 of file URI.h.

Function Documentation

AWS_CORE_API void Aws::Http::CleanupHttp ( )
AWS_CORE_API std::shared_ptr<HttpClient> Aws::Http::CreateHttpClient ( const Aws::Client::ClientConfiguration clientConfiguration)
AWS_CORE_API std::shared_ptr<HttpRequest> Aws::Http::CreateHttpRequest ( const Aws::String uri,
HttpMethod  method,
const Aws::IOStreamFactory streamFactory 
)
AWS_CORE_API std::shared_ptr<HttpRequest> Aws::Http::CreateHttpRequest ( const URI uri,
HttpMethod  method,
const Aws::IOStreamFactory streamFactory 
)
AWS_CORE_API void Aws::Http::InitHttp ( )
AWS_CORE_API void Aws::Http::SetHttpClientFactory ( const std::shared_ptr< HttpClientFactory > &  factory)
AWS_CORE_API void Aws::Http::SetInitCleanupCurlFlag ( bool  initCleanupFlag)

libCurl infects everything with its global state. If it is being used then we automatically initialize and clean it up. If this is a problem for you, set this to false. If you manually initialize libcurl please add the option CURL_GLOBAL_ALL to your init call.

Variable Documentation

AWS_CORE_API const char* Aws::Http::ACCEPT_CHAR_SET_HEADER
AWS_CORE_API const char* Aws::Http::ACCEPT_ENCODING_HEADER
AWS_CORE_API const char* Aws::Http::ACCEPT_HEADER
AWS_CORE_API const char* Aws::Http::AMZ_TARGET_HEADER
AWS_CORE_API const char* Aws::Http::AUTHORIZATION_HEADER
AWS_CORE_API const char* Aws::Http::AWS_AUTHORIZATION_HEADER
AWS_CORE_API const char* Aws::Http::AWS_DATE_HEADER
AWS_CORE_API const char* Aws::Http::AWS_SECURITY_TOKEN
AWS_CORE_API const char* Aws::Http::CONTENT_LENGTH_HEADER
AWS_CORE_API const char* Aws::Http::CONTENT_MD5_HEADER
AWS_CORE_API const char* Aws::Http::CONTENT_TYPE_HEADER
AWS_CORE_API const char* Aws::Http::COOKIE_HEADER
AWS_CORE_API const char* Aws::Http::DATE_HEADER
AWS_CORE_API const char* Aws::Http::HOST_HEADER
const uint16_t Aws::Http::HTTP_DEFAULT_PORT = 80
static

Definition at line 31 of file URI.h.

const uint16_t Aws::Http::HTTPS_DEFAULT_PORT = 443
static

Definition at line 32 of file URI.h.

AWS_CORE_API const char* Aws::Http::SEPARATOR
AWS_CORE_API const char* Aws::Http::USER_AGENT_HEADER
AWS_CORE_API const char* Aws::Http::VIA_HEADER
AWS_CORE_API const char* Aws::Http::X_AMZ_EXPIRES_HEADER