From 58406e56968254cba7f5e807151014326fe0b385 Mon Sep 17 00:00:00 2001 From: Per Larsson Date: Wed, 23 Mar 2022 13:47:01 +0100 Subject: Helper function for sending compact binary array HTTP response. --- zenhttp/httpserver.cpp | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) (limited to 'zenhttp/httpserver.cpp') diff --git a/zenhttp/httpserver.cpp b/zenhttp/httpserver.cpp index 710b6f356..df5a0596a 100644 --- a/zenhttp/httpserver.cpp +++ b/zenhttp/httpserver.cpp @@ -374,6 +374,22 @@ HttpServerRequest::WriteResponse(HttpResponseCode ResponseCode, CbObject Data) } } +void +HttpServerRequest::WriteResponse(HttpResponseCode ResponseCode, CbArray Array) +{ + if (m_AcceptType == HttpContentType::kJSON) + { + ExtendableStringBuilder<1024> Sb; + WriteResponse(ResponseCode, HttpContentType::kJSON, Array.ToJson(Sb).ToView()); + } + else + { + SharedBuffer Buf = Array.GetBuffer(); + std::array Buffers{IoBufferBuilder::MakeCloneFromMemory(Buf.GetData(), Buf.GetSize())}; + return WriteResponse(ResponseCode, HttpContentType::kCbObject, Buffers); + } +} + void HttpServerRequest::WriteResponse(HttpResponseCode ResponseCode, HttpContentType ContentType, std::string_view ResponseString) { -- cgit v1.2.3