[英]retrofit fails to parse inner json objects
这是 model class 来解析来自服务器的 json 字符串。 当我使用这个 class 时,网络响应失败,但我可以在 logcat 中看到帖子。 我认为 retrofit 无法解析内部对象。
public class ProfileResponse {
@SerializedName("result")
private int result;
@SerializedName("comment")
private String comment;
@SerializedName("time")
private String time;
@SerializedName("header")
private Header header;
@SerializedName("tests")
private Test[] tests;
@SerializedName("entries")
private Entry[] entries;
}
当我将此类的字段更改为如下所示的字符串并在 Gson 保持所有内容相同(如 Header、Entry、Test 类'。为了简单起见我不共享它们)之后解析它们时,没有一个问题。 但是我不明白为什么会发生这种情况。
public class ProfileResponse {
@SerializedName("result")
private int result;
@SerializedName("comment")
private String comment;
@SerializedName("time")
private String time;
@SerializedName("header")
private String header;
@SerializedName("tests")
private String tests;
@SerializedName("entries")
private String entries;
}
当我像这样解析响应时,没有问题,但 retrofit 内部没有这样做,我搜索了类似的问题并将我的模型与答案进行了比较,但我无法弄清楚为什么会发生这种情况。
String testString = profileDataString.getTests();
Test[] tests = gson.fromJson(testString, Test[].class);
上面的代码完美运行,但我想在内部使用 retrofit。我不想单独解析每个字段,我想在 class 配置文件响应的单个 object 中接收服务器响应。 我应该怎么办? 提前致谢,
我也许可以提供帮助,但是您的测试 header 和条目 model 类是什么样的? 如果可以的话,我也有兴趣看到你的 retrofit 自己调用。
要尝试的一件事是,我在 retrofit 中的模型中不使用数组类型,但我使用List<my_type>
。 我不太清楚这是否是问题所在,但是您可能想尝试一下吗?
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.