我的Android应用程序很简单,公司将工作推出给工人,而工人接受或拒绝工作。这是我的流程,每当工作人员的电话上接受了一项工作时,我都会重新获取该工作要约以更新屏幕,并且JSON是同构数组结构。
因此,我遇到了一个错误:如果我有两家公司的工作,比如说我接受了公司B的工作,那么我说公司A的工作是2,而公司B的工作是1,因为这是公司B的最后一项工作。在列表中,响应数据类型不均匀。 JSON返回之前和之后,请参见下文
标记为BEFORE的图片是当我有2个公司A职位和1个公司B职位时的图片。接受1个公司B的工作并重新获取该工作请求后,我在AFTER图片中获得了JSON响应。尽管这是有效的JSON返回值,但是由于数组前面的逗号使JSON结构与BEFORE图片完全不同,因此唯一的解决方法是预期“ 2公司A,1公司B ”场景,并创建一个新的POJO来解析此收益,是否有更好的解决方法?
该问题是否应在客户端(移动)或服务器端(后端)得到纠正?
谢谢
答案 0 :(得分:0)
该问题应在后端解决。您当前正在返回一个“作业”对象数组,为什么该数组突然包含一个字符串!?
如果您绝对必须返回某些内容,则空对象(或前一个对象带有"valid":false
之类的东西)比字符串更有意义。
或者(不是很干净),您可以解析该数组,然后检查每个对象是否是您的作业对象,最后得到一个仅属于您想要的类型的新数组。