|
|
@ -23,8 +23,8 @@ namespace Bk::Net { |
|
|
|
route_request(conn, recv_request(conn)); |
|
|
|
route_request(conn, recv_request(conn)); |
|
|
|
delete conn; |
|
|
|
delete conn; |
|
|
|
}); |
|
|
|
}); |
|
|
|
pool.stop(); |
|
|
|
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
pool.stop(); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
void HttpServer::get(std::string url, RequestHandler req_handler) |
|
|
|
void HttpServer::get(std::string url, RequestHandler req_handler) |
|
|
@ -32,7 +32,7 @@ namespace Bk::Net { |
|
|
|
RadixTree* tree; |
|
|
|
RadixTree* tree; |
|
|
|
Tools::string_trim(url, " /"); |
|
|
|
Tools::string_trim(url, " /"); |
|
|
|
auto splits = Tools::string_split(url, "/"); |
|
|
|
auto splits = Tools::string_split(url, "/"); |
|
|
|
if (tree = radix.get_node(splits->data(), splits->size())) tree->value["GET"] = req_handler; |
|
|
|
if ((tree = radix.get_node(splits->data(), splits->size()))) tree->value["GET"] = req_handler; |
|
|
|
else radix.add_nodes(splits->data(), splits->size(), HttpMethodArray({{ "GET", req_handler }})); |
|
|
|
else radix.add_nodes(splits->data(), splits->size(), HttpMethodArray({{ "GET", req_handler }})); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
@ -41,7 +41,7 @@ namespace Bk::Net { |
|
|
|
RadixTree* tree; |
|
|
|
RadixTree* tree; |
|
|
|
Tools::string_trim(url, " /"); |
|
|
|
Tools::string_trim(url, " /"); |
|
|
|
auto splits = Tools::string_split(url, "/"); |
|
|
|
auto splits = Tools::string_split(url, "/"); |
|
|
|
if (tree = radix.get_node(splits->data(), splits->size())) tree->value["POST"] = req_handler; |
|
|
|
if ((tree = radix.get_node(splits->data(), splits->size()))) tree->value["POST"] = req_handler; |
|
|
|
else radix.add_nodes(splits->data(), splits->size(), HttpMethodArray({{ "POST", req_handler }})); |
|
|
|
else radix.add_nodes(splits->data(), splits->size(), HttpMethodArray({{ "POST", req_handler }})); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
@ -50,7 +50,7 @@ namespace Bk::Net { |
|
|
|
RadixTree* tree; |
|
|
|
RadixTree* tree; |
|
|
|
Tools::string_trim(url, " /"); |
|
|
|
Tools::string_trim(url, " /"); |
|
|
|
auto splits = Tools::string_split(url, "/"); |
|
|
|
auto splits = Tools::string_split(url, "/"); |
|
|
|
if (tree = radix.get_node(splits->data(), splits->size())) tree->value["DELETE"] = req_handler; |
|
|
|
if ((tree = radix.get_node(splits->data(), splits->size()))) tree->value["DELETE"] = req_handler; |
|
|
|
else radix.add_nodes(splits->data(), splits->size(), HttpMethodArray({{ "DELETE", req_handler }})); |
|
|
|
else radix.add_nodes(splits->data(), splits->size(), HttpMethodArray({{ "DELETE", req_handler }})); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
@ -59,7 +59,7 @@ namespace Bk::Net { |
|
|
|
RadixTree* tree; |
|
|
|
RadixTree* tree; |
|
|
|
Tools::string_trim(url, " /"); |
|
|
|
Tools::string_trim(url, " /"); |
|
|
|
auto splits = Tools::string_split(url, "/"); |
|
|
|
auto splits = Tools::string_split(url, "/"); |
|
|
|
if (tree = radix.get_node(splits->data(), splits->size())) tree->value["PUT"] = req_handler; |
|
|
|
if ((tree = radix.get_node(splits->data(), splits->size()))) tree->value["PUT"] = req_handler; |
|
|
|
else radix.add_nodes(splits->data(), splits->size(), HttpMethodArray({{ "PUT", req_handler }})); |
|
|
|
else radix.add_nodes(splits->data(), splits->size(), HttpMethodArray({{ "PUT", req_handler }})); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|