Предположим, у нас есть следующий запрос:
curl --location --request POST 'localhost:8080/api' \
--header 'Content-Type: multipart/form-data' \
--form 'field1=value1' \
--form 'field2=value2'
Приведенный ниже обработчик запроса получает всю сущность, но я пытаюсь понять, как вместо этого получить value1
и value2
.
val requestHandler: Flow[HttpRequest, HttpResponse, _] = Flow[HttpRequest].mapAsync(1) {
case HttpRequest(HttpMethods.POST, Uri.Path("/api"), _, entity, _) =>
val entityTextFuture: Future[String] = entity.toStrict(3 seconds).map(_.data.utf8String)
entityTextFuture.flatMap { text =>
Future(HttpResponse(
StatusCodes.OK,
entity = text
))
}
}
Важно : Мне нужно использовать серверный API-интерфейс низкого уровня Akka HTTP, поэтому я не могу использовать маршруты.
Большое спасибо за ваше время и помощь заранее!