gpt4 book ai didi

java - 使用Retrofit从单个键中提取不同的数据

转载 作者:行者123 更新时间:2023-12-01 11:12:28 25 4
gpt4 key购买 nike

所以,我认为这是一个非常简单的解决方案,我可能只是想太多了。

我可以访问 api,并得到以下 json 结构:

{
"request":
{
//request stuff
},
"errors":
[
//if there are any errors, it will show here
],
"code": 200,
"response":
[
//this can be an array or an object
]
}

因此,如果我请求用户,“响应”就会变成一个包含“登录”键的 json 对象,我可以从中获取用户数据。但如果我要求一个图片列表,“响应”是一个图片对象的 json 数组。

您建议我如何使用 Retrofit/GSON 创建 POJO?

我提出的解决方案是创建一个抽象 ApiResponse 类,其中包含请求、错误、代码和响应。响应将是其他类可以实现的接口(interface)。例如,对于用户:

public class UserApiResponse extends ApiResponse

private int code;
private List<String> errors;
private UserResponse response;

UserReponse 会是这样的:

public class UserResponse extends Response

//has all user data

这行得通吗?或者有更好的方法来解决这个问题吗?

最佳答案

我认为使用泛型对 ApiResponse 来说是更好的方法。您的 ApiResponse 可能看起来像

public class ApiResponse<T extends Response>
private int code;
private List<String> errors;
private T response;

改造调用将是这样的

@GET("/example/") ApiResponse<UserResponse> getUsers();

关于java - 使用Retrofit从单个键中提取不同的数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32191797/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com