我在Akka Http(Scala)项目中有路由基本相同(CRUD操作),除了它们在其上运行的实体
我在JsonSupport
特征中定义了我的Json格式:
trait JsonSupport extends SprayJsonSupport {
import DefaultJsonProtocol._
implicit val userJsonFormat = jsonFormat3(User)
}
然后我定义了一个扩展这个特性的路由,所以如果我使用一个具体类型它可以正常工作,但是只要我有一个泛型类型它就无法编译:
def userRoute[T]: Route =
pathPrefix("users") {
post {
entity(as[T]) { user =>
有错误:
could not find implicit value for parameter um: akka.http.scaladsl.unmarshalling.FromRequestUnmarshaller[T]
我怀疑它无法找到隐含值,因为类型太宽泛。
我应该给T
什么类型的约束,以便它能够解决它?
有办法解决吗?
干杯, 莱昂蒂