Sha256: 933491510ab9556ca1345aa6ac03a994c7786e0a11aa8c9fd8943cb2475c56be
Contents?: true
Size: 1.14 KB
Versions: 16
Compression:
Stored size: 1.14 KB
Contents
// // request_handler.hpp // ~~~~~~~~~~~~~~~~~~~ // // Copyright (c) 2003-2020 Christopher M. Kohlhoff (chris at kohlhoff dot com) // // Distributed under the Boost Software License, Version 1.0. (See accompanying // file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) // #ifndef HTTP_SERVER2_REQUEST_HANDLER_HPP #define HTTP_SERVER2_REQUEST_HANDLER_HPP #include <string> #include <boost/noncopyable.hpp> namespace http { namespace server2 { struct reply; struct request; /// The common handler for all incoming requests. class request_handler : private boost::noncopyable { public: /// Construct with a directory containing files to be served. explicit request_handler(const std::string& doc_root); /// Handle a request and produce a reply. void handle_request(const request& req, reply& rep); private: /// The directory containing the files to be served. std::string doc_root_; /// Perform URL-decoding on a string. Returns false if the encoding was /// invalid. static bool url_decode(const std::string& in, std::string& out); }; } // namespace server2 } // namespace http #endif // HTTP_SERVER2_REQUEST_HANDLER_HPP
Version data entries
16 entries across 16 versions & 1 rubygems