java - Android 上的 okhttp 出现错误,预期为 null,但实际为 okhttp3.internal.http1.Http1Codec

标签 java android apollo okhttp

我收到这个错误。得到 api 的响应后。 (我认为当应用程序读取响应时,因为它与 Http1Codec 相关)。有人有什么想法吗?也很难重现。

(我们将 okhttp 与 ApolloGraphQL 一起使用)

Fatal Exception: java.lang.IllegalStateException
expected null but was okhttp3.internal.http1.Http1Codec

okhttp3.internal.connection.StreamAllocation.streamFinished (StreamAllocation.java:304)
okhttp3.internal.http1.Http1Codec$AbstractSource.endOfInput (Http1Codec.java:386)
okhttp3.internal.http1.Http1Codec$FixedLengthSource.read (Http1Codec.java:416)
okio.RealBufferedSource.request (RealBufferedSource.java:68)
okhttp3.logging.HttpLoggingInterceptor.intercept (HttpLoggingInterceptor.java:241)
okhttp3.internal.http.RealInterceptorChain.proceed (RealInterceptorChain.java:147)
okhttp3.internal.http.RealInterceptorChain.proceed (RealInterceptorChain.java:121)
okhttp3.RealCall.getResponseWithInterceptorChain (RealCall.java:200)
okhttp3.RealCall$AsyncCall.execute (RealCall.java:147)
okhttp3.internal.NamedRunnable.run (NamedRunnable.java:32)

最佳答案

请注意,如果您的监视列表中有 response.body().string() ,这将导致您的代码失败。因为监视列表会自动运行。

ResponseBody responseBodyCopy = response.peekBody(Long.MAX_VALUE);
responseBodyCopy.string();

关于java - Android 上的 okhttp 出现错误,预期为 null,但实际为 okhttp3.internal.http1.Http1Codec,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53077232/

相关文章:

node.js - 在ApolloServer中支持异议 `$formatJson`

node.js - 来自 GraphQLObjectType 模式的 graphql mergeSchemas

java - 使用 JUnit 测试异步代码

java - JAAS 和 JAAP 有什么区别?

java - 64 位 Linux 上的 JVM、Tomcat

java - 允许用户 "draw"和调整 JTextArea 的大小

android - ActionBar , TabLayout 在隐藏后留下(不必要的)空间,消失了

android - 将参数传递给 ListView 行中按钮上的 onclick 监听器

java - HandlerThread 没有在后台运行?

javascript - 当我使用 Apollo 时,对象数组转换为对象的对象