From 64d7a06ce8e3bba75ac06b321117c54ecc95fed8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jan=20Hrub=C3=BD?= Date: Wed, 27 May 2020 17:42:11 +0200 Subject: [PATCH] Updated Companies and Individuals Using Beast (markdown) --- Companies-and-Individuals-Using-Beast.md | 35 +++++++++++++++++++++++- 1 file changed, 34 insertions(+), 1 deletion(-) diff --git a/Companies-and-Individuals-Using-Beast.md b/Companies-and-Individuals-Using-Beast.md index ee03f2a..20dbb2a 100644 --- a/Companies-and-Individuals-Using-Beast.md +++ b/Companies-and-Individuals-Using-Beast.md @@ -147,4 +147,37 @@ Repository: [BoostWeb](https://github.com/yanrk/boost_web) is a simple library w ---------- -[Sunstone RTLS](https://sunstone-rtls.com) uses Boost.Beast for handling server-side HTTP and WebSocket requests through its [REST API](https://sunstone-rtls.com/api). \ No newline at end of file +[Sunstone RTLS](https://sunstone-rtls.com) uses Boost.Beast for handling server-side HTTP and WebSocket requests through its [REST API](https://sunstone-rtls.com/api). + +---------- + +[Vitrix Software] (https://www.vitrix.cz/) +We've created a library that simplifies HTTP server creation with support of websockets, authentication and authorization. +[Repository link](https://bitbucket.org/palmapp/vitrix.libs/src/master/spiderlib/src/) + +`class print_file_upload_processor : public spider::file_upload_processor +{ + public: + int handle_uploaded_files(spider::request &request, const std::vector &parts) final + { + for (auto &part : parts) + LOG(INFO) << "uploaded part " << part.content_disposition.name << " " + << part.temp_file_path; + + return 200; + } +}; + +int main(int argc, const char *argv[]) +{ + using namespace spider; + print_file_upload_processor fup{}; + auto thread_pool_ptr = std::make_shared(16); + + auto app_handle = run_spider_app("uploads", {argc, argv}, [&](init_context &ctx, app &my_app) { + on_url(my_app, "/", ctx.io_context, fup, "uploads", thread_pool_ptr); + }); + + app_handle->wait(); +} +` \ No newline at end of file