|
join 1.0
lightweight network framework library
|
HTTP request. More...
#include <httpmessage.hpp>


Public Types | |
| using | ParameterMap = std::map <std::string, std::string> |
Public Types inherited from join::HttpMessage | |
| using | HeaderMap = std::map <std::string, std::string, details::lessNoCase> |
Public Member Functions | |
| HttpRequest () | |
| create the HttpRequest instance by default. | |
| HttpRequest (HttpMethod method) | |
| create the HttpRequest instance by default. | |
| HttpRequest (const HttpRequest &other) | |
| create the HttpRequest instance by copy. | |
| HttpRequest & | operator= (const HttpRequest &other) |
| assign the HttpRequest instance by copy. | |
| HttpRequest (HttpRequest &&other) | |
| create the HttpRequest instance by move. | |
| HttpRequest & | operator= (HttpRequest &&other) |
| assign the HttpRequest instance by move. | |
| virtual | ~HttpRequest ()=default |
| destroy the HttpRequest instance. | |
| HttpMethod | method () const |
| get request method. | |
| std::string | methodString () const |
| get request method string. | |
| void | method (HttpMethod meth) |
| set request method (default GET). | |
| const std::string & | path () const |
| get path. | |
| void | path (const std::string &p) |
| set path. | |
| bool | hasParameter (const std::string &name) const |
| checks if there is a parameter with the specified name. | |
| std::string | parameter (const std::string &name) const |
| get a parameter by name. | |
| void | parameter (const std::string &name, const std::string &val) |
| add query parameter to the HTTP request. | |
| void | parameter (const ParameterMap::value_type ¶m) |
| add query parameter to the HTTP request. | |
| const ParameterMap & | parameters () const |
| get query parameters map. | |
| void | parameters (const ParameterMap ¶ms) |
| add query parameters to the HTTP request. | |
| std::string | dumpParameters () const |
| dump parameters. | |
| std::string | query () const |
| get query. | |
| std::string | urn () const |
| get URN. | |
| std::string | host () const |
| get host. | |
| std::string | auth () const |
| get autorization type. | |
| std::string | credentials () const |
| get credentials. | |
| virtual void | clear () override |
| clear HTTP message. | |
| virtual int | writeHeaders (std::ostream &out) const override |
| write HTTP headers to the given output stream. | |
Public Member Functions inherited from join::HttpMessage | |
| HttpMessage () | |
| create the HttpMessage instance. | |
| HttpMessage (const HttpMessage &other) | |
| create the HttpMessage instance by copy. | |
| HttpMessage & | operator= (const HttpMessage &other) |
| assign the HttpMessage instance by copy. | |
| HttpMessage (HttpMessage &&other) | |
| create the HttpMessage instance by move. | |
| HttpMessage & | operator= (HttpMessage &&other) |
| assign the HttpMessage instance by move. | |
| virtual | ~HttpMessage ()=default |
| destroy the HttpMessage instance. | |
| const std::string & | version () const |
| get HTTP version. | |
| void | version (const std::string &v) |
| set HTTP version (default "HTTP/1.1"). | |
| bool | hasHeader (const std::string &name) const |
| checks if there is a header with the specified name. | |
| std::string | header (const std::string &name) const |
| get header by name. | |
| void | header (const std::string &name, const std::string &val) |
| add header to the HTTP request. | |
| void | header (const HeaderMap::value_type &h) |
| add header to the HTTP request. | |
| const HeaderMap & | headers () const |
| get headers map. | |
| void | headers (const HeaderMap &heads) |
| add headers to the HTTP request. | |
| std::string | dumpHeaders () const |
| dump headers. | |
| size_t | contentLength () const |
| get content length. | |
| virtual int | readHeaders (std::istream &in) |
| read HTTP header from the given input stream. | |
Protected Member Functions | |
| virtual int | parseFirstLine (const std::string &line) override |
| parse first line. | |
| std::string & | decodeUrl (std::string &url) |
| decode url (ex. %20 ==> ' '). | |
| std::string & | normalize (std::string &path) |
| produce a normalized path (collapse duplicated separator and remove dot segment). | |
| void | store (const std::string &query) |
| store parameters received in request. | |
Protected Member Functions inherited from join::HttpMessage | |
| virtual int | parseHeader (const std::string &head) |
| parse HTTP header. | |
Protected Attributes | |
| HttpMethod | _method = Get |
| HTTP method. | |
| std::string | _path |
| HTTP path;. | |
| ParameterMap | _parameters |
| HTTP query parameters. | |
Protected Attributes inherited from join::HttpMessage | |
| std::string | _version |
| HTTP version. | |
| HeaderMap | _headers |
| HTTP headers. | |
Additional Inherited Members | |
Static Protected Attributes inherited from join::HttpMessage | |
| static const std::streamsize | _maxHeaderLen = 2048 |
| HTTP max header size. | |
HTTP request.
| using join::HttpRequest::ParameterMap = std::map <std::string, std::string> |
| HttpRequest::HttpRequest | ( | ) |
create the HttpRequest instance by default.
| HttpRequest::HttpRequest | ( | HttpMethod | method | ) |
create the HttpRequest instance by default.
| method | request method. |
| HttpRequest::HttpRequest | ( | const HttpRequest & | other | ) |
create the HttpRequest instance by copy.
| other | request to copy. |
| HttpRequest::HttpRequest | ( | HttpRequest && | other | ) |
create the HttpRequest instance by move.
| other | request to move. |
|
virtualdefault |
destroy the HttpRequest instance.
| std::string HttpRequest::auth | ( | ) | const |
get autorization type.
|
overridevirtual |
clear HTTP message.
Reimplemented from join::HttpMessage.
| std::string HttpRequest::credentials | ( | ) | const |
get credentials.
|
protected |
decode url (ex. %20 ==> ' ').
| url | url to decode. |
| std::string HttpRequest::dumpParameters | ( | ) | const |
dump parameters.
| bool HttpRequest::hasParameter | ( | const std::string & | name | ) | const |
checks if there is a parameter with the specified name.
| name | name of the parameter to search for. |
| std::string HttpRequest::host | ( | ) | const |
get host.
| HttpMethod HttpRequest::method | ( | ) | const |
get request method.
| void HttpRequest::method | ( | HttpMethod | meth | ) |
set request method (default GET).
| meth | HTTP method. |
| std::string HttpRequest::methodString | ( | ) | const |
get request method string.
|
protected |
produce a normalized path (collapse duplicated separator and remove dot segment).
| path | path to normalize. |
| HttpRequest & HttpRequest::operator= | ( | const HttpRequest & | other | ) |
assign the HttpRequest instance by copy.
| other | request to copy. |
| HttpRequest & HttpRequest::operator= | ( | HttpRequest && | other | ) |
assign the HttpRequest instance by move.
| other | request to move. |
| void HttpRequest::parameter | ( | const ParameterMap::value_type & | param | ) |
add query parameter to the HTTP request.
| param | parameter. |
| std::string HttpRequest::parameter | ( | const std::string & | name | ) | const |
get a parameter by name.
| name | parameter name. |
| void HttpRequest::parameter | ( | const std::string & | name, |
| const std::string & | val ) |
add query parameter to the HTTP request.
| name | parameter name. |
| val | parameter value. |
| const HttpRequest::ParameterMap & HttpRequest::parameters | ( | ) | const |
get query parameters map.
| void HttpRequest::parameters | ( | const ParameterMap & | params | ) |
add query parameters to the HTTP request.
| params | parameters. |
|
overrideprotectedvirtual |
parse first line.
| line | first line to parse. |
Implements join::HttpMessage.
| const std::string & HttpRequest::path | ( | ) | const |
get path.
| void HttpRequest::path | ( | const std::string & | p | ) |
set path.
| p | path. |
| std::string HttpRequest::query | ( | ) | const |
get query.
|
protected |
store parameters received in request.
| query | parameters received in request. |
| std::string HttpRequest::urn | ( | ) | const |
get URN.
|
overridevirtual |
write HTTP headers to the given output stream.
| out | output stream. |
Implements join::HttpMessage.
|
protected |
HTTP method.
|
protected |
HTTP query parameters.
|
protected |
HTTP path;.