有没有办法根据响应 JSON中的字段值来区分响应Successful
和响应?Failed
ok
@Serializable
sealed class Response {
@Serializable
data class Successful(
@SerialName("ok")
val ok: Boolean,
@SerialName("payload")
val payload: Payload
) : Response()
@Serializable
data class Failed(
@SerialName("ok")
val ok: Boolean,
@SerialName("description")
val description: String
) : Response()
}
所以,因为{"ok":true, "payload":…}
我想Successful
上课,而且为了{"ok":false, "description":…}
—— Failed
。
我知道有类似的问题——根据字段的值反序列化为密封的子类——但它使用type
字段,并且我在 JSON 中没有任何类型鉴别器(的含义不是ok
类型鉴别(尽管它可以用于可能有一些技巧))