Я новичок в scala. Я использую HTTP-клиент scala для подключения к другому серверу. Ответ возвращается в будущем [HttpResponse]. Вот что у меня есть:
pathPrefix("run") {
post {
entity(as[InputRequest]) { inputRequest =>
complete {
runService(inputRequest)
}
}
}
}
def runService(inputRequest:InputRequest) : Future[HttpResponse] = {
val pipeline: HttpRequest => Future[HttpResponse] = sendReceive ~> unmarshal[HttpResponse]
val response: Future[HttpResponse] = pipeline(Post("some-hostname", inputRequest)
~> addCredentials(BasicHttpCredentials("user", "pass"))
response
}
Итак, если что-то не получается (например, 500 внутренняя ошибка сервера) из ответа, как перехватить его исключение?