Moshi 使用不同的密钥解析 json

Moshi parse json with different key

我一直在寻找 PolymorphicAdapter,但我能找到的所有多态示例都有一个名为“type”的键或类似的东西,可以用来区分要使用的 class。但是就我而言,我没有这样的钥匙。我对如何解析这种奇特的 json.

有点迷茫
{
    "infos": {
        "1588318": {
            "id": "1588318",
            "id_user": "9701",
            "profile_name": "Profile1",
            "views": 100
        },
        "1588319": {
            "id": "1588319",
            "id_user": "7391",
            "profile_name": "Profile2",
            "views": 10
        },
        "1588320": false,
        "1588321": {
            "id": "1588321",
            "deleted": true
        }
    }
}
data class UserInfo(val infos: Map<String, UserResult>)

sealed class UserResult {

    data class UserDeleted(val id: String, val deleted: Boolean): UserResult()
    data class UserInfoCard(
        val id: String,
        val title: String,
        @Json(name = "profile_name") val profileName: String,
        val views: Int
    ): UserResult()
    
}

最后我没有找到任何解决方案,在与 API 经理讨论后,他说他会用密钥更新以确定它是 profile 还是 [=11] =]