我想知道 Android 上是否存在 HttpUrlConnection 和 POST 请求的已知问题。从 Android 客户端发出 POST 请求时,我们遇到了间歇性的 EOFExceptions。重试相同的请求最终会起作用。这是一个示例堆栈跟踪:
java.io.EOFException
at libcore.io.Streams.readAsciiLine(Streams.java:203)
at libcore.net.http.HttpEngine.readResponseHeaders(HttpEngine.java:579)
at libcore.net.http.HttpEngine.readResponse(HttpEngine.java:827)
at libcore.net.http.HttpURLConnectionImpl.getResponse(HttpURLConnectionImpl.java:283)
at libcore.net.http.HttpURLConnectionImpl.getResponseCode(HttpURLConnectionImpl.java:497)
at libcore.net.http.HttpsURLConnectionImpl.getResponseCode(HttpsURLConnectionImpl.java:134)
有许多类似的错误报告和帖子堆栈溢出,但我不明白是否真的存在问题,如果是,哪些版本的 Android 受到影响以及建议的修复/解决方法是什么。
以下是我所指的一些类似报告:
- Android HttpsUrlConnection eofexception
- Android HttpURLConnection 抛出 EOFException
- HttpURLConnection getInputStream() 中的 EOFException 和 FileNotFoundException
- https://code.google.com/p/google-http-java-client/issues/detail?id=213
- https://code.google.com/p/android/issues/detail?id=29509
- https://code.google.com/p/google-http-java-client/issues/detail?id=230
- https://code.google.com/p/android/issues/detail?id=41576
这是一个潜在的 Android 框架修复
我确实知道在 Froyo 之前的连接池中存在中毒连接的问题,但这些问题仅发生在新的 ICS+ 设备上。如果以后的设备出现问题,我希望有某种官方的 Android 文档来解决这个问题。