0

我得到了里面有对象的 JSON

{
"status": "OK",
"info": null,
"data": {
    "product": {
        "productId": "1",
        "productName": "Oreo"
     }
}

我用 ProductResponse.java 解析

public class ProductResponse {

    @SerializedName("status")
    public String status;

    @SerializedName("info")
    public String info;

    @SerializedName("data")
    public Product data;
}

产品.java

public class Product {

    @SerializedName("productId")
    public String productId;

    @SerializedName("productName")
    public String productName;
}

作为回应,我得到状态 =“OK”,信息 = null,以及带有 nullfields 的产品的数据

4

1 回答 1

0

您已定义ProductResponse#dataString. 在 JSON 中,它显然不是字符串,而是对象。我对 GSON 一无所知,但这肯定是问题所在……现在您已经更改了问题,因此将data其定义为Product.

data不是 a Product,它是一个具有product属性的对象。

看来你应该有

public class ProductResponseData {

    @SerializeName("product")
    public Product product;
}

然后将ProductResponse'更改data为:

@SerializedName("data")
public ProductResponseData data;
于 2013-09-18T08:12:42.487 回答