Arrays 如何将空结构封送为空数组
我不确定这个标题是否准确地解释了我想要做的事情,所以我会尽可能多地提供细节 我有一个带有嵌套结构的结构,我正在编组并发送给API。有些请求要求最低级别的结构为空,并且需要其父参数等于空数组而不是null。如果我在参数上使用ommitempty,它将从我的请求中完全删除它,请求将失败。如果在参数的参数上使用ommitempty,则会导致值为null,请求将失败 以下是我用于请求的结构:Arrays 如何将空结构封送为空数组,arrays,go,struct,marshalling,Arrays,Go,Struct,Marshalling,我不确定这个标题是否准确地解释了我想要做的事情,所以我会尽可能多地提供细节 我有一个带有嵌套结构的结构,我正在编组并发送给API。有些请求要求最低级别的结构为空,并且需要其父参数等于空数组而不是null。如果我在参数上使用ommitempty,它将从我的请求中完全删除它,请求将失败。如果在参数的参数上使用ommitempty,则会导致值为null,请求将失败 以下是我用于请求的结构: // SubscribeRequest is the top level wrapper for ICWS re
// SubscribeRequest is the top level wrapper for ICWS request bodies
SubscribeRequest struct {
ClientStateIsFresh bool `json:"clientStateIsFresh"`
StatisticKeys []StatisticKey `json:"statisticKeys"`
}
// StatisticKey is a value we want to pull from ICWS reporting
StatisticKey struct {
StatisticIdentifier string `json:"statisticIdentifier"`
ParameterValueItems []Parameter `json:"parameterValueItems"`
}
// Parameter is a filter applied when pulling statistics
Parameter struct {
ParameterTypeID string `json:"parameterTypeId"`
Value string `json:"value"`
}
我需要封送的JSON如下所示:
{
"clientStateIsFresh":true,
"statisticKeys":
[
{
"statisticIdentifier":"inin.system.interaction:ActiveCalls",
"parameterValueItems":
[
]
}
]
}
如果我有任何其他信息,请求将失败。我没有得到任何错误,但它不会返回任何可用的数据。关于如何做到这一点有什么建议吗
*注意:我确实尝试使用[]*参数而不是[]参数,但它给出了相同的结果 如果需要空数组,则必须提供空切片
StatisticKey{
StatisticIdentifier: "id.string",
ParameterValueItems: []Parameter{},
}
如果需要空数组,则必须提供空切片
StatisticKey{
StatisticIdentifier: "id.string",
ParameterValueItems: []Parameter{},
}
您是否可以嵌入示例SubscribeRequest,以及您希望它如何序列化,以及它与您现在得到的有何区别。若你们可以分享一些有趣的代码,这些代码可能已经过时了,那个么你们可以嵌入示例SubscribeRequest,你们希望它如何序列化,以及它与你们现在得到的有什么不同。最好是你能分享一些有趣的代码,这些代码可能是过去做过的。谢谢你的快速回复!成功了。谢谢你的快速回复!