Serialisation/deserialisation 用于使用 Upickle 密封的特征
Serialisation/deserialisation for sealed traits with Upickle
我正在尝试从我的播放服务器调用网络服务,我正在为 serialisation/deserialisation 使用 upickle。我的问题是我有一个密封的特征
sealed trait RequestContent {
}
case class CreateUserRequest (email: String, password: String,jsonBlob: Map[String, String], createBTCWallet: Boolean) extends RequestContent
当我尝试使用 upickle.default.write
作为
val userRequest = CreateUserRequest("email","pw",Map("name" -> "name", true))
write(userRequest)
它为 $type
提供了一个额外的密钥。有没有办法在不输入 upickle 的情况下将数据获取到 post?
在密封特征层次结构的情况下,uPickle 需要一个额外的 $type
字段才能反序列化,因为它需要知道要实例化哪个子类。
所以这个额外的钥匙的存在是完全正常和必要的。无法删除它,因为那样会阻止反序列化工作。
我正在尝试从我的播放服务器调用网络服务,我正在为 serialisation/deserialisation 使用 upickle。我的问题是我有一个密封的特征
sealed trait RequestContent {
}
case class CreateUserRequest (email: String, password: String,jsonBlob: Map[String, String], createBTCWallet: Boolean) extends RequestContent
当我尝试使用 upickle.default.write
作为
val userRequest = CreateUserRequest("email","pw",Map("name" -> "name", true))
write(userRequest)
它为 $type
提供了一个额外的密钥。有没有办法在不输入 upickle 的情况下将数据获取到 post?
在密封特征层次结构的情况下,uPickle 需要一个额外的 $type
字段才能反序列化,因为它需要知道要实例化哪个子类。
所以这个额外的钥匙的存在是完全正常和必要的。无法删除它,因为那样会阻止反序列化工作。