我遇到的一个 API 的 JSON 结构很差。有人认为发回如下所示的列表是个好主意
features: [
"First one",
"second one",
{
"feature": "third one",
"hasAdditionalImpact": true
},
"forth one"
]
我已经想出了一种将这些数据放入结构中的方法,但这很有效:
struct MyStruct {
SensibleData: String,
SensibleTruthy: bool,
features: serde_json::Value,
}
这无助于我规范化和验证数据。
有没有一种好方法可以将第一个对象变成类似的东西
features: [
{
"feature": "First one",
"hasAdditionalImpact": false
},
{
"feature": "second one",
"hasAdditonalImpact": false
},
{
"feature": "third one",
"hasAdditionalImpact": true
},
{
"feature": "forth one",
"hasAdditionalImpact": false
}
]
我看到type_name可能可用于检查类型并在它被解析后进行后处理serde_json
,但我也看到这type_name
是出于诊断目的,所以我不想将其用于此目的。