1.8
Public Types | Public Member Functions | Protected Attributes | Friends | List of all members
HttpClientRequest Class Reference

An HTTP client request. More...

Public Types

using ReadCallback = std::function< void(const unsigned char *data, size_t len, bool done) >
 Type used for callback on read. More...
 

Public Member Functions

 HttpClientRequest () noexcept
 Create a request for the specified URL. More...
 
 HttpClientRequest (const HttpClientRequest &)=delete
 
 HttpClientRequest (HttpClientRequest &&) noexcept
 
virtual ~HttpClientRequest () noexcept
 
HttpClientRequestoperator= (const HttpClientRequest &)=delete
 
HttpClientRequestoperator= (HttpClientRequest &&) noexcept
 
virtual void start_async (const std::string &url, ReadCallback callback)
 Start the download. More...
 

Protected Attributes

std::unique_ptr< detail::HttpClientRequestData > m_impl
 Implementation pointer. More...
 

Friends

class detail::HttpClientRequestManager
 

Detailed Description

An HTTP client request.

This works as an asynchronous HTTP request handler that uses the EGT event loop to process the request.

HttpClientRequest request("http://example.com");
request.start_async(url, [](const unsigned char* data, size_t len, bool done){
...
});
HttpClientRequest() noexcept
Create a request for the specified URL.

Member Typedef Documentation

◆ ReadCallback

using ReadCallback = std::function < void(const unsigned char* data, size_t len, bool done) >

Type used for callback on read.

Constructor & Destructor Documentation

◆ HttpClientRequest() [1/3]

HttpClientRequest ( )
explicitnoexcept

Create a request for the specified URL.

◆ HttpClientRequest() [2/3]

HttpClientRequest ( const HttpClientRequest )
delete

◆ HttpClientRequest() [3/3]

◆ ~HttpClientRequest()

virtual ~HttpClientRequest ( )
virtualnoexcept

Member Function Documentation

◆ operator=() [1/2]

HttpClientRequest& operator= ( const HttpClientRequest )
delete

◆ operator=() [2/2]

HttpClientRequest& operator= ( HttpClientRequest &&  )
noexcept

◆ start_async()

virtual void start_async ( const std::string &  url,
ReadCallback  callback 
)
virtual

Start the download.

Friends And Related Function Documentation

◆ detail::HttpClientRequestManager

friend class detail::HttpClientRequestManager
friend

Member Data Documentation

◆ m_impl

std::unique_ptr<detail::HttpClientRequestData> m_impl
protected

Implementation pointer.