如何使用apollo-android读取响应头和写请求头

时间:2018-04-15 06:30:08

标签: java android http-headers apollo apollo-android

我试图使用apollo-android库与graphql server进行通信。问题是后端使用标头来验证请求,我找不到添加它们的方法。同样在auth请求中,令牌在头文件中发送,我找不到从响应中读取它的方法。

人们建议在OkHttpClient中通过拦截器设置auth标头,但这种方法不适用于我的情况,因为客户端必须在不同的请求中发送不同的标头集。

那么,在这种情况下有没有解决方法?我应该使用像Retrofit这样的简单休息客户端,还是可以在每个新请求中使用所需的标头集创建新的ApolloClient和OkHttpClient实例?或者可能还有其他解决方法?

1 个答案:

答案 0 :(得分:0)

  

人们建议在OkHttpClient中通过拦截器设置auth标头,但这种方法不适用于我的情况,因为客户端必须在不同的请求中发送不同的标头集。

在拦截器上设置接受变化头的setter方法和字段。在发出需要标头的ApolloClient请求之前调用这些setter方法。

或者,教导拦截器如何根据拦截器可见的请求特征(例如URL)为不同的请求应用不同的头。