![](/img/trans.png)
[英]How to get nested JSON object and array from retrofit response on Android?
[英]Retrofit 2 how to get the response from nested json objects (android)
這是我的第一個json響應,我得到了令牌
{
"token": "I0ZmEifQ.CdbGWjkIYnuO29uJokCIGn8kXFbLbVp3gnlsEszagno"
}
pojo類
public class TokenReceiver {
private String token;
public String getToken() {
return token;
}
}
以上工作正常,但如何得到以下的回應
{
"user": {
"id": 1,
"first_name": "Super",
"last_name": "Admin",
"email": "abc@sad.sdf",
"mobile_no": 2147483647,
"created_at": "2016-01-21 00:00:00",
"updated_at": "2016-01-21 00:00:00",
"user_role_id": 1
}
}
狀態代碼為200(OK)但數據未附加到pojo
public class User {
@SerializedName("id")
@Expose
private int id;
@SerializedName("first_name")
@Expose
private String first_name;
@SerializedName("last_name")
@Expose
private String last_name;
@SerializedName("email")
@Expose
private String email;
@SerializedName("mobile_no")
@Expose
private String mobile_no;
@SerializedName("created_at")
@Expose
private String created_at;
@SerializedName("updated_at")
@Expose
private String updated_at;
@SerializedName("user_role_id")
@Expose
private int user_role_id;
}
提前致謝
public class Response{
@SerializedName("user")
@Expose
private User user;
}
public class User{
@SerializedName("id")
@Expose
private int id;
@SerializedName("first_name")
@Expose
private String first_name;
@SerializedName("last_name")
@Expose
private String last_name;
@SerializedName("email")
@Expose
private String email;
@SerializedName("mobile_no")
@Expose
private String mobile_no;
@SerializedName("created_at")
@Expose
private String created_at;
@SerializedName("updated_at")
@Expose
private String updated_at;
@SerializedName("user_role_id")
@Expose
private int user_role_id;
}
內部響應可以通過以下方式訪問。
response.getUser().getId();
Public class classname{
public User user;
class User{
@SerializedName("id")
@Expose
private int id;
@SerializedName("first_name")
@Expose
private String first_name;
@SerializedName("last_name")
@Expose
private String last_name;
@SerializedName("email")
@Expose
private String email;
@SerializedName("mobile_no")
@Expose
private String mobile_no;
@SerializedName("created_at")
@Expose
private String created_at;
@SerializedName("updated_at")
@Expose
private String updated_at;
@SerializedName("user_role_id")
@Expose
private int user_role_id;
}
}
上面的代碼將適合您
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.