0
API에서 json 데이터를 가져 오려고하지만 문제는 실제 데이터로 연결되는 URL 만 포함되어 있다는 것입니다. 예 :Android, Retrofit : 여러 URL을 거쳐 API 데이터 얻기
// e.g. base url api.someapi.com/v0/
{
"count": 246,
"results": [
{
"href": "https://api.someapi.com/v0/items/akluhdkunsduawhbd",
"name": "item A"
},
{
"href": "https://api.someapi.com/v0/items/fgluorkunfythmhbc",
"name": "item B"
},
// more stuff...
]
}
당신이 원하는 데이터를 가지고 실제 항목으로 이동하지만, 데이터의 일부는 예를 들어, 다른 URL에서 다시입니다 https://api.someapi.com/v0/items/fgluorkunfythmhbc/type/esgrtesrsuykbdv
각 항목을 전체 목록과 함께 목록으로 표시하려면 어떻게해야합니까?
Call<Collection> call = api.getCollection();
call.enqueue(new Callback<Collection>() {
@Override
public void onResponse(Call<Collection> call, Response<Collection> response) {
ArrayList<CollectionData> collectionDataList = response.body().getResults();
// Can get urls of each item but how to get the data?
}
@Override
public void onFailure(Call<Collection> call, Throwable t) {
Log.e(TAG, t.getMessage());
}
});
컬렉션 클래스 :
public class Collection {
@SerializedName("count")
@Expose
private String count;
@SerializedName("results")
@Expose
private ArrayList<CollectionData> results;
public String getCount() {
return count;
}
public void setCount(String count) {
this.count = count;
}
public ArrayList<CollectionData> getResults() {
return results;
}
public void setResults(ArrayList<CollectionData> results) {
this.results = results;
}
}
ApiService 인터페이스 :
public interface ApiService {
@Headers("Content-Type: application/json")
@GET("items")
Call<Collection> getCollection();
@Headers("Content-Type: application/json")
@GET("items/{id}")
Call<Card> getItem(@Path("id") String id);
}
중첩 전화 또는 다른 방법으로
나는 현재 이런 일이?