我想解码一个请求 JSON,一个字段的值可以是单个字符串或数组(列表)。
我知道如何单独解析。但我正在寻找一种方法来使用动态解码器来解析它们。
JSON中的value字段就是我正在谈论的情况
单值示例:
{
"filter":{
"op":"IN",
"field":"name",
"value": "testDuplicate"
}
}
多值示例:
{
"filter":{
"op":"IN",
"field":"name",
"value":["testDuplicate","tt"]
}
}
单值结构:
type DocumentTypeSearchRequest struct {
Filter DocTypeFilter `json:"filter"`
}
type DocTypeFilter struct {
Op string `json:"op"`
Field string `json:"field"`
Value string `json:"value"`
}
多值结构:
type DocumentTypeSearchRequest struct {
Filter DocTypeFilter `json:"filter"`
}
type DocTypeFilter struct {
Op string `json:"op"`
Field string `json:"field"`
Value []string `json:"value"`
}
一种解决方案是尝试在其中一个解码失败时使用另一个解码,但我不确定这是否是处理此问题的正确方法。
守着一只汪
相关分类