如何使用 Future[StandardRoute] 完成请求
How to complete request with Future[StandardRoute]
我有简化后的代码,如下所示:
path("path") {
post {
val routeFuture: Future[StandardRoute] = Future {
//some app logic
utilFunctionRoute()
}
??? // complete the request
}
}
有一次我有 Future[StandardRoute] 包含我的结果,但我不知道如何在不阻塞 Future 的情况下完成此请求。
在处理期货时可以使用onComplete
来完成请求without blocking
。 onComplete
接受未来,然后我们可以在 success
和 failure
上进行模式匹配以准备 Http 响应。
path("path") {
post {
val routeFuture: Future[StandardRoute] = Future {
utilFunctionRoute()
}
onComplete(routeFuture){
case util.Success(f) =>
complete(StatusCodes.OK)
case util.Failure(ex) =>
complete(StatusCodes.InternalServerError )
}
}
我有简化后的代码,如下所示:
path("path") {
post {
val routeFuture: Future[StandardRoute] = Future {
//some app logic
utilFunctionRoute()
}
??? // complete the request
}
}
有一次我有 Future[StandardRoute] 包含我的结果,但我不知道如何在不阻塞 Future 的情况下完成此请求。
在处理期货时可以使用onComplete
来完成请求without blocking
。 onComplete
接受未来,然后我们可以在 success
和 failure
上进行模式匹配以准备 Http 响应。
path("path") {
post {
val routeFuture: Future[StandardRoute] = Future {
utilFunctionRoute()
}
onComplete(routeFuture){
case util.Success(f) =>
complete(StatusCodes.OK)
case util.Failure(ex) =>
complete(StatusCodes.InternalServerError )
}
}