4
在遊戲框架2.3打交道,一個動作可以產生這樣從一個成功的未來調用的結果:失敗的期貨
def index = Action.async {
val futureInt = scala.concurrent.Future { intensiveComputation() }
futureInt.map(i => Ok("Got result: " + i))
}
但是,如何才能行動對付失敗的未來呼叫,即未來的通過呼籲failure()
而不是success()
完成?
例如,一個動作如何產生一個InternalServerError
的結果,並返回未來的失敗返回的消息?
onComplete
和onFailure
回調似乎不適合操作的流程(它需要返回結果,無論是來自成功的未來還是失敗的結果)。