cpp_backend/src/http_server.h

28 lines
751 B
C
Raw Permalink Normal View History

#pragma once
#include "sdk.h"
// boost.beast будет использовать std::string_view вместо boost::string_view
#define BOOST_BEAST_USE_STD_STRING_VIEW
#include <boost/asio/ip/tcp.hpp>
#include <boost/asio/strand.hpp>
#include <boost/beast/core.hpp>
#include <boost/beast/http.hpp>
#include "listener.h"
#include "session.h"
namespace http_server
{
template<typename RequestHandler>
2023-11-04 00:05:40 +01:00
void ServeHttp(net::io_context& ioc,
const tcp::endpoint& endpoint,
RequestHandler&& handler)
{
2024-03-16 19:21:43 +01:00
using MyListener = Listener<std::decay_t<RequestHandler>>;
2023-11-04 00:05:40 +01:00
std::make_shared<MyListener>(ioc,
endpoint,
std::forward<RequestHandler>(handler))->Run();
}
}