add file support
This commit is contained in:
parent
6ddf982780
commit
935336d271
22
main.cpp
22
main.cpp
|
@ -67,23 +67,9 @@ StringResponse HandleRequest(StringRequest&& req)
|
|||
}
|
||||
|
||||
FileResponse HandleRequestFile(StringRequest&& req)
|
||||
{
|
||||
const auto route = req.target();
|
||||
|
||||
if (req.target() == "/"sv || find(route.begin(), route.end(), '.') != route.end())
|
||||
{
|
||||
return GetStaticAssetHandler(req);
|
||||
}
|
||||
else
|
||||
{
|
||||
FileResponse res(http::status::not_found, 1);
|
||||
res.set(http::field::content_type, content_type::k_JSON);
|
||||
res.content_length(0);
|
||||
res.keep_alive(true);
|
||||
|
||||
return res;
|
||||
}
|
||||
}
|
||||
|
||||
// Запускает функцию fn на n потоках, включая текущий
|
||||
template<typename Fn>
|
||||
|
@ -126,11 +112,11 @@ int main()
|
|||
constexpr net::ip::port_type port = 8080;
|
||||
http_server::ServeHttp(ioc, {address, port}, [](auto&& req, auto&& sender)
|
||||
{
|
||||
sender(HandleRequestFile(std::forward<decltype(req)>(req)));
|
||||
});
|
||||
const auto route = req.target();
|
||||
|
||||
http_server::ServeHttp(ioc, {address, port + 1}, [](auto&& req, auto&& sender)
|
||||
{
|
||||
if (req.target() == "/"sv || find(route.begin(), route.end(), '.') != route.end())
|
||||
sender(HandleRequestFile(std::forward<decltype(req)>(req)));
|
||||
else
|
||||
sender(HandleRequest(std::forward<decltype(req)>(req)));
|
||||
});
|
||||
|
||||
|
|
Loading…
Reference in New Issue