crawlserv++  [under development]
Application for crawling and analyzing textual content of websites.
WebServer.hpp File Reference
#include "../Data/Compression/Gzip.hpp"
#include "../Helper/FileSystem.hpp"
#include "../Helper/Memory.hpp"
#include "../Helper/Strings.hpp"
#include "../Main/Exception.hpp"
#include "../_extern/mongoose/mongoose.h"
#include <algorithm>
#include <array>
#include <cctype>
#include <cstddef>
#include <cstdint>
#include <fstream>
#include <functional>
#include <ios>
#include <stdexcept>
#include <string>
#include <string_view>
#include <utility>
#include <vector>
Include dependency graph for WebServer.hpp:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  crawlservpp::Main::WebServer
 Embedded web server class using the mongoose library. More...
 
class  crawlservpp::Main::WebServer::Exception
 Class for web server exceptions. More...
 

Namespaces

 crawlservpp::Main
 Namespace for the main classes of the program.
 

Constants

constexpr auto crawlservpp::Main::listenToAddress {"tcp://0.0.0.0:"sv}
 The address at which to listen for incoming connections. More...
 
constexpr auto crawlservpp::Main::headerContentType {"content-type"sv}
 The name of a (lower-case) content type header. More...
 
constexpr auto crawlservpp::Main::headerContentSize {"content-length"sv}
 The name of a (lower-case) content size header. More...
 
constexpr auto crawlservpp::Main::headerContentEncoding {"content-encoding"sv}
 The name of a (lower-case) content encoding header. More...
 
constexpr auto crawlservpp::Main::headerContentTypeValue {"multipart/form-data"sv}
 The expected content type for HTTP multipart requests. More...
 
constexpr auto crawlservpp::Main::headerBoundaryBegin {"boundary="sv}
 The beginning of the header part that contains the boundary. More...
 
constexpr auto crawlservpp::Main::httpOk {200}
 HTTP OK response code. More...
 
constexpr auto crawlservpp::Main::filePartHeaderBegin {"content-"sv}
 Required beginning of (lower-case) file part header. More...
 
constexpr auto crawlservpp::Main::filePartBoundaryBegin {"--"sv}
 Required beginning of a HTTP multipart boundary. More...
 
constexpr auto crawlservpp::Main::filePartBoundaryFinalEnd {"--"sv}
 The end of the final HTTP multipart boundary. More...
 
constexpr auto crawlservpp::Main::filePartUploadHeader {"content-disposition"sv}
 The name of the upload header containing content information. More...
 
constexpr auto crawlservpp::Main::filePartUploadName {"name="sv}
 The beginning of the field in the content information containing the name of the content. More...
 
constexpr auto crawlservpp::Main::filePartUploadFileName {"filename="sv}
 The name of the content containing the original name of the file to upload. More...
 
constexpr auto crawlservpp::Main::filePartUploadField {"filetoupload"sv}
 The (lower-case) name of the content containing file content to upload. More...
 
constexpr auto crawlservpp::Main::randFileNameLength {64}
 The length of randomly generated file names. More...
 
constexpr auto crawlservpp::Main::quotesLength {2}
 The length of two encapsulating quotes, in bytes. More...
 
constexpr auto crawlservpp::Main::gzipMinBytes {2000}
 The number of minimum bytes for gzip to be used. More...