Allow no spaces in content-type
For the content type header
application/json;charset=utf-8
The Redfish specification DSP0266 shows no space between the ; and
charset. Sites like mozilla show the space included [1]
Considering the discrepancy, we should just accept both.
Resolves #271
[1] https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Content-Type
Tested: Submitter reports issue fixed.
Change-Id: I77b7db91d65acc84f2221ec50985d4b942fbe77f
Signed-off-by: Ed Tanous <ed@tanous.net>
diff --git a/http/parsing.hpp b/http/parsing.hpp
index 9a19baf..cf81353 100644
--- a/http/parsing.hpp
+++ b/http/parsing.hpp
@@ -20,7 +20,9 @@
inline bool isJsonContentType(std::string_view contentType)
{
return bmcweb::asciiIEquals(contentType, "application/json") ||
- bmcweb::asciiIEquals(contentType, "application/json; charset=utf-8");
+ bmcweb::asciiIEquals(contentType,
+ "application/json; charset=utf-8") ||
+ bmcweb::asciiIEquals(contentType, "application/json;charset=utf-8");
}
inline JsonParseResult parseRequestAsJson(const crow::Request& req,