Оказывается, что, как указано в документации , AuthedService
работает на AuthedRequest
, что эквивалентно (User, Request[F])
, поэтому необходимо вызвать decode
наrequest
часть AuthedRequest
, см .:
// case class definition
case class UserUpdate(name: String)
import org.http4s.AuthedService
import org.http4s.circe._
val updateUserService: AuthedService[String, F] =
AuthedService {
case authReq @ PATCH -> Root / "mypath" as _ =>
authReq.req.decode[UserUpdate] { userUpdate =>
...
}
}