我分享了一段代码,演示了我有两种类型的response
.如果你看一下下面的代码,你会发现服务结果的response
会略有不同.在第一种类型中,您有一个data
,但在第二种类型中,这个data
本身有另一个data
.
{
"data": {
"hasError": false,
"developerMessage": null,
"totalCount": 43
},
"hasError": false,
"developerMessage": null
}
或:
{
"data": {
"hasError": false,
"developerMessage": null,
"data": {
"hasError": false,
"developerMessage": null,
"totalCount": 43
},
"totalCount": 43
},
"hasError": false,
"developerMessage": null
}
因此,为了解决这个困境,我必须首先判断response
的结果,并将其分为两个区块.最大的问题是,由于我无法在这里解释的原因,这个层次 struct 可能会扩展,我有三个数据,但我们可以肯定的是,response
中的data
总是the deepest.(本例中的third项)
return this.httpWrapperService.get(url + tableNameWithSlash, {
params: params, additionalOptions: {spinnerEnabled: false}
}).then((result: any) => {
if (result.data.data) {
// code
return [...result.data.data];
}
else if (result.data) {
// code
return [...result.data];
}
});
我想知道是否有更好的解决方案来处理这个动态response
.