翻新的REST api返回不同的数据类型

时间:2019-07-16 13:14:29

标签: android rest retrofit2

我正在将REST API与Retrofit2一起使用,而我拥有

  

http://myApi:3000/user/ {user_id} /消息

在此路线上,api可以返回消息列表或单个消息

#If multiple message the api response is 
[
   { 
     id: 1,
     message: "message1"
   },
   { 
     id: 2,
     message: "message2"
   }
]

#Else if there is only one message
{ 
  id: 4,
  message: "message4"
}

现在我有

public interface MessageRequest {
    @GET("/user/{user_id}/messages")
    Call<List<Message>> tour(@Path("user_id") long user_id);
}

但这仅在有很多消息的情况下才有效,只有一个我得到此异常

  

预期为BEGIN_ARRAY,但为BEGIN_OBJECT

有没有一种方法可以将结果转换为仅包含消息的数组?

希望我足够具体,请在需要时要求我提供更多精度。

0 个答案:

没有答案