Я пытаюсь выстроить в Акку HttpResponse
как таковой:Маршал Akka `HttpResponse`, как Аргонавт` Json`
{
"code": 200,
"headers": [],
"body": "{\"data\": \"Yes!\"}"
}
Если я пишу Аргонавт EncodeJson
для этого экземпляра, он может выглядеть следующим образом:
implicit def httpResponseEncodeJson: EncodeJson[HttpResponse] =
EncodeJson(
(res: HttpResponse) ⇒ {
("code" := res._1.value) ->:
("headers" := res._2.toList) ->:
("body" := res._3) ->: jEmptyObject
}
)
Мне удалось выставить заголовки как json. Единственная проблема заключается в корпусе, то есть ResponseEntity
. Поскольку это поток akka, он может вернуть только будущее, если я использую .toStrict
.
Может ли кто-нибудь вести меня о том, как я мог бы его маршалировать?
Спасибо большое за ваш ответ. Думаю, я сделал почти то же самое. Можете ли вы просмотреть мой ответ? –