参考:okhttp response.body().contentLength()=-1
responseBody.contentLength(); = -1
1、文件下载的时候,一致拿不到文件的总长度,返回 -1。
服务器对下发的资源做GZip操作,而此时就没有相应的content-length,在网络请求的时候在Header中加入:Request.Builder().addHeader(“Accept-Encoding”, “identity”)
这样强迫服务器不走压缩。
2、倘若返回数据的时候没有设置Content-Length属性,添加代码:response.addHeader(“Content-Length”, String.valueOf(fis.available()));