/// Pedido HTTP.
class HTTPMessage {
+ // Constantes.
+
+ public:
+
+ /// \todo TODO completar codigos.
+ static const unsigned OK = 200;
+ static const unsigned BAD_REQUEST = 401;
+ static const unsigned NOT_FOUND = 404;
+ static const unsigned LENGTH_REQUIRED = 411;
+ static const unsigned INTERNAL_SERVER_ERROR = 500;
+ static const unsigned NOT_IMPLEMENTED = 501;
+ static const unsigned HTTP_VERSION_NOT_SUPPORTED = 505;
+
// Atributos.
private:
/// Cuerpo del mensaje.
std::string body;
- protected:
+ protected: // TODO hacer privados con get() y set() ???
+
+ public:
/// Version HTTP.
std::string version;
/**
* Constructor.
*/
- HTTPMessage(const std::string& http_version = "1.1");
+ //HTTPMessage(const std::string& http_version = "1.1");
/**
* Constructor.
*/
- //HTTPMessage(const std::string& body,
- // const std::string& http_version = "1.1");
+ HTTPMessage(const std::string& _body = "",
+ const std::string& _version = "1.1");
/**
* Obtiene el cuerpo del mensaje.
friend std::ostream& operator<<(std::ostream& os,
const HTTPMessage& m);
+ /**
+ * Obtiene la razón según un código.
+ *
+ * \param code Código de estado.
+ */
+ static std::string reason(unsigned code);
+
};
}