Disable timeouts for upload/download
All checks were successful
/ Build the server (push) Successful in 5m39s
All checks were successful
/ Build the server (push) Successful in 5m39s
This commit is contained in:
parent
430ef15f83
commit
7177146a56
@ -34,6 +34,8 @@ net::awaitable<void> Server::download(tcp_stream &s, const http::request<http::s
|
||||
auto node = get_node(user, node_id);
|
||||
if (!node) { co_await send_error(s, req, "Invalid node"); co_return; }
|
||||
|
||||
s.expires_never();
|
||||
|
||||
beast::error_code ec;
|
||||
auto mime = get_mime_type(node->name);
|
||||
auto res = create_response<http::status::ok, http::file_body, http::string_body>(req);
|
||||
@ -42,6 +44,8 @@ net::awaitable<void> Server::download(tcp_stream &s, const http::request<http::s
|
||||
res.set(http::field::content_disposition, "attachment; filename=\"" + node->name + "\"");
|
||||
res.body().open((user->user_dir / std::to_string(node->id)).c_str(), beast::file_mode::read, ec);
|
||||
co_await http::async_write(s, res, net::use_awaitable);
|
||||
|
||||
s.expires_after(std::chrono::seconds(30));
|
||||
}
|
||||
|
||||
struct Zip : public ZipArchive {
|
||||
@ -113,6 +117,8 @@ net::awaitable<void> Server::download_multi(tcp_stream &s, const http::request<h
|
||||
res.body().data = nullptr;
|
||||
res.body().more = true;
|
||||
|
||||
s.expires_never();
|
||||
|
||||
http::response_serializer<http::buffer_body> sr{res};
|
||||
|
||||
co_await http::async_write_header(s, sr, net::use_awaitable);
|
||||
@ -145,4 +151,6 @@ net::awaitable<void> Server::download_multi(tcp_stream &s, const http::request<h
|
||||
res.body().data = nullptr;
|
||||
res.body().more = false;
|
||||
co_await http::async_write(s, sr, net::use_awaitable);
|
||||
|
||||
s.expires_after(std::chrono::seconds(30));
|
||||
}
|
||||
|
@ -67,6 +67,8 @@ net::awaitable<void> Server::upload(tcp_stream &s, tcp_buffer &buf, http::reques
|
||||
std::filesystem::remove(path.replace_extension("png"));
|
||||
}
|
||||
|
||||
s.expires_never();
|
||||
|
||||
std::exception_ptr ex_ptr;
|
||||
beast::error_code ec;
|
||||
body.body().open(path.c_str(), beast::file_mode::write, ec);
|
||||
@ -92,6 +94,8 @@ net::awaitable<void> Server::upload(tcp_stream &s, tcp_buffer &buf, http::reques
|
||||
res.keep_alive(false);
|
||||
co_await http::async_write(s, res, net::use_awaitable);
|
||||
|
||||
s.expires_after(std::chrono::seconds(30));
|
||||
|
||||
if (ex_ptr)
|
||||
rethrow_exception(ex_ptr);
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user