java - AndroidStudio Retrofit2 响应获取数据

标签 java android-studio retrofit2

我的 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”。我该怎么办?

最佳答案

您应该执行以下操作:

首先创建数据类解析器

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

       public String getApi_token() {
       return api_token;
      }

}

然后更改您的 loginResponse 类:

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();

关于java - AndroidStudio Retrofit2 响应获取数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67034529/

相关文章:

android - ProGuard 在从 Android Studio 构建替代 buildType 时不会混淆

java - oninfowindowclick 仅在有多个标记的情况下与标记信息一起使用

java - Retrofit2 将正文作为 Json

Android Dagger 2 在那里时要求@Provides

java - 如何从 okhttp 的缓存中删除 url?

java - 确保微服务 Spring Cloud 安全 Oauth2

java - 通过 JFrame 添加到 ArrayList 时出现 NullPointerException 错误

android - Admob 测试 ID 不断变化

java - 错误 : Entities and Pojos must have a usable public constructor.

java - 导航菜单项点击不起作用