繁体   English   中英

AndroidStudio retrofit2 响应获取数据

[英]AndroidStudio retrofit2 response getting data

我的 REST API 响应如下所示:

{
"message": "OK",
"data": {
    "api_token": "1dwdafg45567fsf",
    "name": "Albert",
    "second_name": "Ferbs"
 }
}

我的界面是:

@POST("api/login")
Call<LoginResponse> loginUser(@Body LoginRequest loginRequest);

我想从“api_token”中获取一个值。 我的登录响应是:

public class LoginResponse implements Serializable {
private String api_token;

public String getApi_token() {
    return api_token;
}

public void setApi_token(String api_token) {
    this.api_token= api_token;
}
}

但是loginResponse.getApi_token()返回“null”。 我应该怎么办?

你应该做如下:

首先创建数据 class 解析器

public class Data implements Serializable {
       @SerializedName("api_token")
       private String api_token;

       public String getApi_token() {
       return api_token;
      }

}

然后更改您的登录响应 class:

public class LoginResponse implements Serializable {

@SerializedName("message")
private String message;
@SerializedName("data")
private Data data;

public String getMessage() {
    return message;
}

public String getData() {
    return data;
}

}

然后你可以调用你的方法

response.getData().getApi_token();

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM