Я использую apollo-android , и я хочу знать, возможно ли использовать следующий подход:
Я определил запрос с именем locations
в schema.json
моего сервера.Он определяется следующим образом:
type locations {
continents: [Continent!],
countries: [Country!],
usaStates: [UsaState!]
}
Попытка этого запроса на игровой площадке работает отлично, и он возвращает континенты, страны и США.Это запрос, который я определяю на игровой площадке:
query getLocations {
locations {
continents {
name
code
}
countries {
name
code
}
usaStates {
code
name
}
}
}
И, конечно, если я запрашиваю только континенты очереди, он возвращает только континенты:
query getLocations {
locations {
continents {
name
code
}
}
Мой вопрос:Можно сделать то же самое в клиентской части.Когда я определяю запрос в файле api.graphql
моего проекта Android, я делаю его так:
query getLocations {
locations {
continents {
name
code
}
countries {
code
name
}
usaStates {
code
name
}
}
}
И затем, когда я вызываю его в коде, результат содержит континенты, страны иusaStates:
GetLocationsQuery builder = GetLocationsQuery.builder().build();
api.query(builder)
.enqueue(new ApolloCall.Callback<GetLocationsQuery.Data>() {
@Override
public void onResponse(@NotNull com.apollographql.apollo.api.Response<GetLocationsQuery.Data> response) {
apiListener.onFinish(response);
}
@Override
public void onFailure(@NotNull ApolloException e) {
Log.v("APOLLO", e.toString());
apiListener.onError(e);
}
});
Есть способ сделать тот же вызов, но определив, что я хочу, чтобы континенты, страны и США были только континентами?
Заранее спасибо!