diff options
Diffstat (limited to 'http_response.h')
-rw-r--r-- | http_response.h | 40 |
1 files changed, 40 insertions, 0 deletions
diff --git a/http_response.h b/http_response.h new file mode 100644 index 0000000..1221dd2 --- /dev/null +++ b/http_response.h @@ -0,0 +1,40 @@ +#pragma once +#include <string> +#include <unordered_map> + +namespace flask +{ + std::unordered_map<int, std::string> statusCodes = { + {200, "HTTP/1.1 200 OK\r\n"}, + {201, "HTTP/1.1 201 Created\r\n"}, + {202, "HTTP/1.1 202 Accepted\r\n"}, + {204, "HTTP/1.1 204 No Content\r\n"}, + + {300, "HTTP/1.1 300 Multiple Choices\r\n"}, + {301, "HTTP/1.1 301 Moved Permanently\r\n"}, + {302, "HTTP/1.1 302 Moved Temporarily\r\n"}, + {304, "HTTP/1.1 304 Not Modified\r\n"}, + + {400, "HTTP/1.1 400 Bad Request\r\n"}, + {401, "HTTP/1.1 401 Unauthorized\r\n"}, + {403, "HTTP/1.1 403 Forbidden\r\n"}, + {404, "HTTP/1.1 404 Not Found\r\n"}, + + {500, "HTTP/1.1 500 Internal Server Error\r\n"}, + {501, "HTTP/1.1 501 Not Implemented\r\n"}, + {502, "HTTP/1.1 502 Bad Gateway\r\n"}, + {503, "HTTP/1.1 503 Service Unavailable\r\n"}, + }; + + struct response + { + int status = 200; + std::string body; + std::unordered_map<std::string, std::string> headers; + response() {} + response(const std::string& body) : body(body) {} + response(std::string&& body) : body(std::move(body)) {} + response(const std::string& body, int status) : body(body), status(status) {} + response(std::string&& body, int status) : body(std::move(body)), status(status) {} + }; +} |