| #include "http_request.hpp" |
| |
| #ifdef BMCWEB_ENABLE_GRPC |
| #include "absl/log/log.h" |
| #endif |
| |
| namespace crow |
| { |
| |
| Request::Request( |
| boost::beast::http::request<boost::beast::http::string_body> reqIn, |
| std::error_code& ec) : |
| req(std::move(reqIn)) |
| { |
| if (!setUrlInfo()) |
| { |
| ec = std::make_error_code(std::errc::invalid_argument); |
| } |
| |
| #ifdef BMCWEB_ENABLE_GRPC |
| LOG(INFO) << "=> HTTP: Request: path: target: " << this->target(); |
| #endif |
| } |
| |
| Request::Request(std::string_view bodyIn, std::error_code& ec) : req({}, bodyIn) |
| { |
| if (!setUrlInfo()) |
| { |
| ec = std::make_error_code(std::errc::invalid_argument); |
| } |
| |
| #ifdef BMCWEB_ENABLE_GRPC |
| LOG(INFO) << "=> HTTP: Request: path: target: " << this->target(); |
| #endif |
| } |
| |
| bool Request::setUrlInfo() |
| { |
| auto result = boost::urls::parse_relative_ref(target()); |
| |
| if (!result) |
| { |
| return false; |
| } |
| urlBase = *result; |
| return true; |
| } |
| |
| } // namespace crow |