commit | 50bfc917c9d857cdb7dcba495771ffbfa914a0c1 | [log] [tgz] |
---|---|---|
author | Ed Tanous <etanous@nvidia.com> | Mon Jul 29 14:20:50 2024 -0700 |
committer | Ed Tanous <ed@tanous.net> | Wed Aug 28 16:03:38 2024 +0000 |
tree | de6ea2ddb8c87a32d7f5a1a5d3df0d244b35c681 | |
parent | 2539e69ce10b61cef945d6dc83a1d603050dc2f5 [diff] [blame] |
Fix redfish response for unknown method Redfish protocol validator recently added a new test to check for invalid methods[1] and expect a valid redfish response. bmcweb will return the correct response if the HTTP method is known, but returns 404 for unknown methods. This commit implements support for returning the proper code for completely unknown methods. Tested: Redfish protocol validator passes. ``` curl -k -X METHODNOTEXIST "https://192.168.7.2/redfish/v1" curl --http1.1 -k -X METHODNOTEXIST "https://192.168.7.2/redfish/v1" ``` works for both HTTP1 and HTTP2. [1] https://github.com/DMTF/Redfish-Protocol-Validator/commit/2476e126b818f040c7231de3e9dc4df93ee636a1 Change-Id: Id7436345042bd387d7a7b706acd06afda744ddc4 Signed-off-by: Ed Tanous <etanous@nvidia.com>
diff --git a/http/http_request.hpp b/http/http_request.hpp index 55387d4..7cf2842 100644 --- a/http/http_request.hpp +++ b/http/http_request.hpp
@@ -75,11 +75,17 @@ { return req.method(); } + void method(boost::beast::http::verb verb) { req.method(verb); } + std::string_view methodString() + { + return req.method_string(); + } + std::string_view getHeaderValue(std::string_view key) const { return req[key];