while ((nReaded = nis.read(buffer)) > 0 && nLeftLength > 0) { fos.write(buffer, 0, nReaded); nLeftLength -= nReaded; } fos.close();
调试后发现代码会一直在while循环中,直到点击取消请求才会运行到fos.close()这里,请问是什么原因,谢谢!
应该是远端post的流里没有数据了但是nleftLength>0一直为true,导致尝试读取阻塞在这里,也就是实际上传的尺寸小于提取的Content-Length大小,可以跟一下这块数据
另我已经把项目代码上传到网盘上,方便大家参考:https://pan.baidu.com/s/1slaiEpJ