我需要创建一个函数,该函数在给定Future[Either[Error, T]]
的情况下得出路由
我这样做
def handleFuture[T] handleFuture(f: Future[Either[Error, T]]): Route = {
onComplete(f) {
case Failure(er) => complete(InternalServerError, err)
case Success(Left(er)) => complete(BadRequest, er)
case Success(Right(value)) => complete(OK, value)
}
}
对于通用类型A
,我的作用域中有隐式的编组器/解组器,并且出现too many arguments for method complete
错误。
我在做什么错了?
答案 0 :(得分:1)
您有错字。将err
更改为er
:
case Failure(er) => complete(InternalServerError, er)
// ^