我有一个Retrofit的问题,它使用静态类的类,而不是运行时类型来序列化它的RequestBody。
我们说我有两个班级:
class A{
String a;
}
class B extends A{
String b;
}
现在我想提出一个请求:
@Post("/someUrl)
Observable<Void> someRequest(@Body A body);
我想将A或B实例传递给someRequest,并根据类类型正确地序列化它们。
我尝试使用RuntimeTypeAdapterFactory,它运行良好,但它在序列化后给了我额外的字段(类型字段)。 我的A,B类只用于序列化。
答案 0 :(得分:1)
考虑重载方法本身:
@Post("/someUrl)
Observable<Void> someRequest(@Body A body);
@Post("/someUrl)
Observable<Void> someRequest(@Body B body);