diff options
author | Dan Goodliffe <dan@randomdan.homeip.net> | 2023-04-06 19:48:37 +0100 |
---|---|---|
committer | Dan Goodliffe <dan@randomdan.homeip.net> | 2023-04-06 19:48:37 +0100 |
commit | 07805e249d17a59c7c056cfb886b9b3e39870d71 (patch) | |
tree | 61f3eb8117da3cc99e33ef45a6e75e09cead8c85 | |
parent | Fix writing of XML document after XSL transform (diff) | |
download | icespider-07805e249d17a59c7c056cfb886b9b3e39870d71.tar.bz2 icespider-07805e249d17a59c7c056cfb886b9b3e39870d71.tar.xz icespider-07805e249d17a59c7c056cfb886b9b3e39870d71.zip |
If Accept header specifies no preference first, shortcut to default serializericespider-0.8.3
-rw-r--r-- | icespider/core/ihttpRequest.cpp | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/icespider/core/ihttpRequest.cpp b/icespider/core/ihttpRequest.cpp index 97cdcd7..c575c82 100644 --- a/icespider/core/ihttpRequest.cpp +++ b/icespider/core/ihttpRequest.cpp @@ -114,6 +114,12 @@ namespace IceSpider { if (acceptHdr) { auto accepts = parseAccept(*acceptHdr); auto & strm = getOutputStream(); + if (accepts.empty()) { + throw Http400_BadRequest(); + } + if (!accepts.front().group && !accepts.front().type) { + return handler->defaultSerializer(strm); + } for (auto & a : accepts) { ContentTypeSerializer serializer = handler->getSerializer(a, strm); if (serializer.second) { |