【发布时间】:2019-04-01 19:37:34
【问题描述】:
因此,我正在尝试确定从现有 Web API 获取/解析 JSON 数据的最佳方式。
我的意思是,给定一个像这样的端点:
https://example.com/api/projects(不是真实的)
返回 JSON 结构如下:
{
"count": 4424,
"results": [
{"id": 2718, "name": "fox", "location": "Omaha"},
{"id": 2719, "name": "bear", "location": "Miami"}
]
}
然后我需要获取这些 id 值的列表,以便从使用项目 ID 的后续端点获取 JSON:
https://example.com/api/projects/[id]/resources(不是真实的)
并返回 JSON 结构如下:
{
"quota_cpus": 2,
"active_cpus": 1,
"quota_memory": 16384,
"active_memory": 0
}
我当时的想法是,我将使用 OKHTTP3 进行 REST 调用以检索项目 ID 并将它们存储在名为 Project 的 java 对象中。
然后我将遍历列表并进行另一个 REST 调用以检索每个单独项目的资源列表并将其存储在名为 ProjectResources 的新对象中。
我的问题是:
- 这似乎是正确的方法吗?
- 您会建议哪些更好的替代方案?
- 我应该进行这些同步还是异步调用?
【问题讨论】:
-
听起来你想要一个来自服务器的新端点,你控制着那个组件还是可以和它的维护者交谈?当然,你的方法会奏效,如果可以的话是异步的,但是你会浪费很多 http 调用
-
不幸的是,我无法控制该组件,也无法与那些控制的人取得联系。我想考虑到这些限制,这是要采用的方法吗?
标签: java json rest okhttp3 endpoint