An HTTP request. More...
#include <http_request.h>
Public Member Functions | |
request () | |
Construct an empty request. (sets the method to GET ) | |
request (HTTPMethod method_, std::string raw_url_, std::string url_, query_string url_params_, ci_map headers_, std::string body_, unsigned char http_major, unsigned char http_minor, bool has_keep_alive, bool has_close_connection, bool is_upgrade) | |
Construct a request with all values assigned. | |
void | add_header (std::string key, std::string value) |
const std::string & | get_header_value (const std::string &key) const |
bool | check_version (unsigned char major, unsigned char minor) const |
const query_string | get_body_params () const |
Get the body as parameters in QS format. More... | |
template<typename CompletionHandler > | |
void | post (CompletionHandler handler) |
Send data to whoever made this request with a completion handler and return immediately. | |
template<typename CompletionHandler > | |
void | dispatch (CompletionHandler handler) |
Send data to whoever made this request with a completion handler. | |
Public Attributes | |
HTTPMethod | method |
std::string | raw_url |
The full URL containing the ? and URL parameters. | |
std::string | url |
The endpoint without any parameters. | |
query_string | url_params |
The parameters associated with the request. (everything after the ? in the URL) | |
ci_map | headers |
std::string | body |
std::string | remote_ip_address |
The IP address from which the request was sent. | |
unsigned char | http_ver_major |
unsigned char | http_ver_minor |
bool | keep_alive |
Whether or not the server should send a connection: Keep-Alive header to the client. | |
bool | close_connection |
Whether or not the server should shut down the TCP connection once a response is sent. | |
bool | upgrade |
Whether or noth the server should change the HTTP connection to a different connection. | |
void * | middleware_context {} |
void * | middleware_container {} |
asio::io_service * | io_service {} |
An HTTP request.
|
inline |
Get the body as parameters in QS format.
This is meant to be used with requests of type "application/x-www-form-urlencoded"