HTTP-level controller for serving static files and directory listings. More...
#include <HttpFileserver.h>
Collaboration diagram for HttpFileserver: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().
Here is the call graph for this function:
Here is the caller graph for this function:| 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().
Here is the call graph for this function:
Here is the caller graph for this function:
|
private |
Definition at line 99 of file HttpFileserver.h.
Referenced by handle_list_directory(), and handle_static_request().