pion-net
4.0.9
|
#include <HTTPResponse.hpp>
Inherits pion::net::HTTPMessage.
Public Member Functions | |
HTTPResponse (const HTTPRequest &http_request) | |
HTTPResponse (const std::string &request_method) | |
HTTPResponse (const HTTPResponse &http_response) | |
copy constructor | |
HTTPResponse (void) | |
virtual | ~HTTPResponse () |
virtual destructor | |
virtual void | clear (void) |
clears all response data | |
virtual bool | isContentLengthImplied (void) const |
the content length may be implied for certain types of responses | |
void | updateRequestInfo (const HTTPRequest &http_request) |
void | setStatusCode (unsigned int n) |
sets the HTTP response status code | |
void | setStatusMessage (const std::string &msg) |
sets the HTTP response status message | |
unsigned int | getStatusCode (void) const |
returns the HTTP response status code | |
const std::string & | getStatusMessage (void) const |
returns the HTTP response status message | |
void | setCookie (const std::string &name, const std::string &value) |
void | setCookie (const std::string &name, const std::string &value, const std::string &path) |
void | setCookie (const std::string &name, const std::string &value, const std::string &path, const unsigned long max_age) |
void | setCookie (const std::string &name, const std::string &value, const unsigned long max_age) |
void | deleteCookie (const std::string &name) |
deletes cookie called name by adding a Set-Cookie header (cookie has no path) | |
void | deleteCookie (const std::string &name, const std::string &path) |
deletes cookie called name by adding a Set-Cookie header (cookie has a path) | |
void | setLastModified (const unsigned long t) |
sets the time that the response was last modified (Last-Modified) | |
![]() | |
virtual | ~HTTPTypes () |
virtual destructor | |
Protected Member Functions | |
virtual void | updateFirstLine (void) const |
updates the string containing the first line for the HTTP message | |
Additional Inherited Members | |
defines message data integrity status codes | |
![]() | |
typedef StringDictionary | Headers |
data type for HTTP headers | |
typedef StringDictionary | CookieParams |
data type for HTTP cookie parameters | |
typedef StringDictionary | QueryParams |
data type for HTTP query parameters | |
![]() | |
static std::string | get_date_string (const time_t t) |
converts time_t format into an HTTP-date string | |
static std::string | make_query_string (const QueryParams &query_params) |
builds an HTTP query string from a collection of query parameters | |
static std::string | make_set_cookie_header (const std::string &name, const std::string &value, const std::string &path, const bool has_max_age=false, const unsigned long max_age=0) |
![]() | |
static const std::string | STRING_EMPTY |
static const std::string | STRING_CRLF |
static const std::string | STRING_HTTP_VERSION |
static const std::string | HEADER_NAME_VALUE_DELIMITER |
static const std::string | HEADER_HOST |
static const std::string | HEADER_COOKIE |
static const std::string | HEADER_SET_COOKIE |
static const std::string | HEADER_CONNECTION |
static const std::string | HEADER_CONTENT_TYPE |
static const std::string | HEADER_CONTENT_LENGTH |
static const std::string | HEADER_CONTENT_LOCATION |
static const std::string | HEADER_CONTENT_ENCODING |
static const std::string | HEADER_LAST_MODIFIED |
static const std::string | HEADER_IF_MODIFIED_SINCE |
static const std::string | HEADER_TRANSFER_ENCODING |
static const std::string | HEADER_LOCATION |
static const std::string | HEADER_AUTHORIZATION |
static const std::string | HEADER_REFERER |
static const std::string | HEADER_USER_AGENT |
static const std::string | HEADER_X_FORWARDED_FOR |
static const std::string | HEADER_CLIENT_IP |
static const std::string | CONTENT_TYPE_HTML |
static const std::string | CONTENT_TYPE_TEXT |
static const std::string | CONTENT_TYPE_XML |
static const std::string | CONTENT_TYPE_URLENCODED |
static const std::string | REQUEST_METHOD_HEAD |
static const std::string | REQUEST_METHOD_GET |
static const std::string | REQUEST_METHOD_PUT |
static const std::string | REQUEST_METHOD_POST |
static const std::string | REQUEST_METHOD_DELETE |
static const std::string | RESPONSE_MESSAGE_OK |
static const std::string | RESPONSE_MESSAGE_CREATED |
static const std::string | RESPONSE_MESSAGE_ACCEPTED |
static const std::string | RESPONSE_MESSAGE_NO_CONTENT |
static const std::string | RESPONSE_MESSAGE_FOUND |
static const std::string | RESPONSE_MESSAGE_UNAUTHORIZED |
static const std::string | RESPONSE_MESSAGE_FORBIDDEN |
static const std::string | RESPONSE_MESSAGE_NOT_FOUND |
static const std::string | RESPONSE_MESSAGE_METHOD_NOT_ALLOWED |
static const std::string | RESPONSE_MESSAGE_NOT_MODIFIED |
static const std::string | RESPONSE_MESSAGE_BAD_REQUEST |
static const std::string | RESPONSE_MESSAGE_SERVER_ERROR |
static const std::string | RESPONSE_MESSAGE_NOT_IMPLEMENTED |
static const std::string | RESPONSE_MESSAGE_CONTINUE |
static const unsigned int | RESPONSE_CODE_OK = 200 |
static const unsigned int | RESPONSE_CODE_CREATED = 201 |
static const unsigned int | RESPONSE_CODE_ACCEPTED = 202 |
static const unsigned int | RESPONSE_CODE_NO_CONTENT = 204 |
static const unsigned int | RESPONSE_CODE_FOUND = 302 |
static const unsigned int | RESPONSE_CODE_UNAUTHORIZED = 401 |
static const unsigned int | RESPONSE_CODE_FORBIDDEN = 403 |
static const unsigned int | RESPONSE_CODE_NOT_FOUND = 404 |
static const unsigned int | RESPONSE_CODE_METHOD_NOT_ALLOWED = 405 |
static const unsigned int | RESPONSE_CODE_NOT_MODIFIED = 304 |
static const unsigned int | RESPONSE_CODE_BAD_REQUEST = 400 |
static const unsigned int | RESPONSE_CODE_SERVER_ERROR = 500 |
static const unsigned int | RESPONSE_CODE_NOT_IMPLEMENTED = 501 |
static const unsigned int | RESPONSE_CODE_CONTINUE = 100 |
HTTPResponse: container for HTTP response information
Definition at line 27 of file HTTPResponse.hpp.
|
inline |
constructs a new HTTPResponse object for a particular request
http_request | the request that this is responding to |
Definition at line 37 of file HTTPResponse.hpp.
References updateRequestInfo().
|
inline |
constructs a new HTTPResponse object for a particular request method
request_method | the method used by the HTTP request we are responding to |
Definition at line 49 of file HTTPResponse.hpp.
|
inline |
default constructor: you are strongly encouraged to use one of the other constructors, since HTTPResponse parsing is influenced by the request method
Definition at line 64 of file HTTPResponse.hpp.
|
inline |
sets a cookie by adding a Set-Cookie header (see RFC 2109) the cookie will be discarded by the user-agent when it closes
name | the name of the cookie |
value | the value of the cookie |
Definition at line 127 of file HTTPResponse.hpp.
References pion::net::HTTPMessage::addHeader(), and pion::net::HTTPTypes::make_set_cookie_header().
|
inline |
sets a cookie by adding a Set-Cookie header (see RFC 2109) the cookie will be discarded by the user-agent when it closes
name | the name of the cookie |
value | the value of the cookie |
path | the path of the cookie |
Definition at line 140 of file HTTPResponse.hpp.
References pion::net::HTTPMessage::addHeader(), and pion::net::HTTPTypes::make_set_cookie_header().
|
inline |
sets a cookie by adding a Set-Cookie header (see RFC 2109)
name | the name of the cookie |
value | the value of the cookie |
path | the path of the cookie |
max_age | the life of the cookie, in seconds (0 = discard) |
Definition at line 155 of file HTTPResponse.hpp.
References pion::net::HTTPMessage::addHeader(), and pion::net::HTTPTypes::make_set_cookie_header().
|
inline |
sets a cookie by adding a Set-Cookie header (see RFC 2109)
name | the name of the cookie |
value | the value of the cookie |
max_age | the life of the cookie, in seconds (0 = discard) |
Definition at line 169 of file HTTPResponse.hpp.
References pion::net::HTTPMessage::addHeader(), and pion::net::HTTPTypes::make_set_cookie_header().
|
inline |
Updates HTTP request information for the response object (use this if the response cannot be constructed using the request)
http_request | the request that this is responding to |
Definition at line 95 of file HTTPResponse.hpp.
References pion::net::HTTPRequest::getMethod(), pion::net::HTTPMessage::getVersionMajor(), pion::net::HTTPMessage::getVersionMinor(), and pion::net::HTTPMessage::setChunksSupported().
Referenced by HTTPResponse().