临时开发的一个 app,Java 没来得及多看,基础比较弱,各位多指点。
这样的,我试着用 HttpURLConnection 来向我的 flask 服务发起一个 http 请求,返回值,是一个比较大的 json 格式的数据
只截取了一部分,大概有几十 K 的大小,也不算是很大。然后就老是出现一个很奇怪的时候,debug 发现 app 这边接收了一小部分就报错了。
SocketException: recvfrom failed: ECONNRESET 这个错误,网上出现的还不少,但是原因也比较多,我测试给他返回一个比较小的值时,就是正常的,那么我这边的原因也比较明确了,就是数据比较大,我接收的姿势可能太简单或者哪里没有设置对,导致数据没有接收完的时候,连接不明原因的断开了。
这是代码
开始以为是超时的问题,设置再长都没用。用浏览器直接访问这个连接,都没问题,而且速度非常快。所以,应该不是超时的问题。
也试着换了 okhttp 这种比较新的包,仍然是会有这个问题,折腾几天了。
这样的,我试着用 HttpURLConnection 来向我的 flask 服务发起一个 http 请求,返回值,是一个比较大的 json 格式的数据
只截取了一部分,大概有几十 K 的大小,也不算是很大。然后就老是出现一个很奇怪的时候,debug 发现 app 这边接收了一小部分就报错了。
SocketException: recvfrom failed: ECONNRESET 这个错误,网上出现的还不少,但是原因也比较多,我测试给他返回一个比较小的值时,就是正常的,那么我这边的原因也比较明确了,就是数据比较大,我接收的姿势可能太简单或者哪里没有设置对,导致数据没有接收完的时候,连接不明原因的断开了。
这是代码
开始以为是超时的问题,设置再长都没用。用浏览器直接访问这个连接,都没问题,而且速度非常快。所以,应该不是超时的问题。
也试着换了 okhttp 这种比较新的包,仍然是会有这个问题,折腾几天了。