从后端服务器返回的非均匀JSON数据

时间:2019-05-06 13:10:05

标签: android json okhttp

我的Android应用程序很简单,公司将工作推出给工人,而工人接受或拒绝工作。这是我的流程,每当工作人员的电话上接受了一项工作时,我都会重新获取该工作要约以更新屏幕,并且JSON是同构数组结构。

因此,我遇到了一个错误:如果我有两家公司的工作,比如说我接受了公司B的工作,那么我说公司A的工作是2,而公司B的工作是1,因为这是公司B的最后一项工作。在列表中,响应数据类型不均匀。 JSON返回之前和之后,请参见下文

enter image description here

标记为BEFORE的图片是当我有2个公司A职位和1个公司B职位时的图片。接受1个公司B的工作并重新获取该工作请求后,我在AFTER图片中获得了JSON响应。尽管这是有效的JSON返回值,但是由于数组前面的逗号使JSON结构与BEFORE图片完全不同,因此唯一的解决方法是预期“ 2公司A,1公司B ”场景,并创建一个新的POJO来解析此收益,是否有更好的解决方法?

该问题是否应在客户端(移动)或服务器端(后端)得到纠正?

谢谢

1 个答案:

答案 0 :(得分:0)

该问题应在后端解决。您当前正在返回一个“作业”对象数组,为什么该数组突然包含一个字符串!?

如果您绝对必须返回某些内容,则空对象(或前一个对象带有"valid":false之类的东西)比字符串更有意义。

或者(不是很干净),您可以解析该数组,然后检查每个对象是否是您的作业对象,最后得到一个仅属于您想要的类型的新数组。