【发布时间】:2015-08-12 14:01:38
【问题描述】:
这让我发疯。我创建了一个 Android 应用程序,它向运行 CakePHP 2.X 的 Apache 服务器发出 REST 请求。
- 在 Android 方面:请求是使用 Google 的 Volley 提出的,它是 HEAD 版本。
- 在服务器端:它是 Apache 2、PHP 5.4、CakePHP 2.x 和 SSL。
无论是 GET 还是 POST 请求方法,POST 时使用相同的 URL 或相同的参数,有时响应很好,其他时候我得到 com.android.volley.NoConnectionError: java.net.ProtocolException: Unexpected status line: 10380HTTP/1.1 200 OK
当错误发生时,我唯一注意到的是更改前的数字。
10380HTTP/1.1 200 OK。
有什么想法吗? 谢谢
我可以嗅探请求/响应并确认这是服务器端问题。
【问题讨论】:
-
看起来像来自前面的 HTTP 响应的垃圾。也许有人尝试 transfer-encoding: chunked 并且不正确?
-
我想是的.. 但它总是一个数字,可能是一个大小/长度信息?
-
不幸的是,我怀疑任何人都能够回答您的问题 - 您能做的最好的事情就是尝试确定
10380的来源或它的含义。 Borked chunked encoding 听起来确实是一个可行的原因here's another similar question。 -
我明白了,我将应用程序服务器安装在两个不同的暂存和生产服务器中,两者都发生了问题。所以我猜错误是在客户端。我尝试使用 cmd 行 cURL 和 JMeter 执行请求时出错,响应很好。你知道我可以用来测试我的服务器的另一个工具吗?
标签: php android http cakephp android-volley