【发布时间】:2019-05-18 06:50:13
【问题描述】:
如何在 Apollo Android 客户端中使用 graphq 订阅。 现在我的服务器上有代码:
type Subscription {
targetLocationUpdated(id: String!): Target
}
我的解析器代码:
Subscription: {
locationAdded: {
subscribe: () => pubsub.asyncIterator(LOCATION_ADDED),
},
targetLocationUpdated: {
subscribe: withFilter(
() => pubsub.asyncIterator('TARGET_UPDATED'),
(payload, variables) => {
console.log(payload.targetLocationUpdated.id === variables.id);
return payload.targetLocationUpdated.id === variables.id;
}
)
}
}
我的 Android 客户端具有向我的 graphql 服务器端点发送休息请求的方法:
public static ApolloClient getMyApolloClient() {
HttpLoggingInterceptor loggingInterceptor = new HttpLoggingInterceptor();
loggingInterceptor.setLevel(HttpLoggingInterceptor.Level.BODY);
OkHttpClient okHttpClient = new OkHttpClient.Builder()
.addInterceptor(loggingInterceptor)
.build();
myApolloClient = ApolloClient.builder()
.serverUrl(BASE_URL)
.okHttpClient(okHttpClient)
.build();
return myApolloClient;
}
}
但我不知道如何在 android 客户端上使用订阅。 在官方 appolo 文档中,我没有找到在 android 客户端中使用订阅的示例。 请帮我解决这个问题。
【问题讨论】:
-
你能解决这个问题吗?
标签: android graphql apollo-client graphql-subscriptions