From bfcb325472911dcd91a3271459e1ae635ece9e9b Mon Sep 17 00:00:00 2001 From: eidheim Date: Sun, 1 Jan 2017 14:34:42 +0100 Subject: [PATCH] Added on_upgrade for cases where one wants to handle connection upgrades by another library, for instanace Simple-WebSocket-Server --- server_http.hpp | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/server_http.hpp b/server_http.hpp index 9ab8760..6fcc678 100644 --- a/server_http.hpp +++ b/server_http.hpp @@ -147,6 +147,8 @@ namespace SimpleWeb { std::function::Response>, std::shared_ptr::Request>)> > default_resource; std::function::Request>, const boost::system::error_code&)> on_error; + + std::function socket, std::shared_ptr::Request>)> on_upgrade; private: std::vector &socket, const std::shared_ptr &request) { + //Upgrade connection + if(on_upgrade) { + auto it_param=request->header.find("Upgrade"); + if(it_param!=request->header.end()) { + on_upgrade(socket, request); + return; + } + } //Find path- and method-match, and call write_response for(auto& res: opt_resource) { if(request->method==res.first) {