HTTP-level controller for serving static files and directory listings. More...
#include <HttpFileserver.h>
Public Member Functions | |
HttpFileserver () | |
Construct a new HttpFileserver object. | |
void | handle_static_request (HttpRequest &req, HttpResponse &res, const RouteMatch &match) |
Handle requests for static file content. | |
void | handle_list_directory (HttpRequest &req, HttpResponse &res, const RouteMatch &match) |
Handle requests to list directory contents. | |
std::string | getMimeType (const std::string &filePath) |
Get the MIME type based on the file extension. | |
Private Attributes | |
FileHandler | fileHandler |
Definition at line 67 of file HttpFileserver.h.
HttpFileserver::HttpFileserver | ( | ) |
Construct a new HttpFileserver object.
Definition at line 152 of file HttpFileserver.cpp.
std::string HttpFileserver::getMimeType | ( | const std::string & | filePath | ) |
Get the MIME type based on the file extension.
filePath | Full file path. |
filePath | Full file path. |
Definition at line 222 of file HttpFileserver.cpp.
References TRACE.
void HttpFileserver::handle_list_directory | ( | HttpRequest & | req, |
HttpResponse & | res, | ||
const RouteMatch & | match | ||
) |
Handle requests to list directory contents.
req | The HTTP request object. |
res | The HTTP response object. |
params | Route parameters (unused). |
req | The HTTP request object. |
res | The HTTP response object. |
params | Route parameters (unused). |
Definition at line 158 of file HttpFileserver.cpp.
References fileHandler, HttpRequest::getPath(), FileHandler::listDirectory(), HttpResponse::sendError(), and HttpResponse::sendSuccess().
Referenced by Router::listDirectory().
void HttpFileserver::handle_static_request | ( | HttpRequest & | req, |
HttpResponse & | res, | ||
const RouteMatch & | match | ||
) |
Handle requests for static file content.
req | The HTTP request object. |
res | The HTTP response object. |
params | Route parameters (unused). |
req | The HTTP request object. |
res | The HTTP response object. |
params | Route parameters (unused). |
Definition at line 204 of file HttpFileserver.cpp.
References fileHandler, HttpRequest::getPath(), FileHandler::serveFile(), and urlDecode().
Referenced by Router::serveStatic().
|
private |
Definition at line 99 of file HttpFileserver.h.
Referenced by handle_list_directory(), and handle_static_request().