场景:服务端将文件放入输出流中,安卓端采用OkHttp3下载失败,但同样的方法可以下载百度上的文件。
原因:经排查,为安卓端采用OkHttp3下载调用进度条获取不到文件大小而出错,而进度条获取文件大小通过文件头“Content-Length”获取,推测服务端没有传该参数。
纠错:服务端输出文件流的时候添加文件头。
//HttpServletResponse resp
resp.setHeader("Content-Length", ""+file.length());
场景:服务端将文件放入输出流中,安卓端采用OkHttp3下载失败,但同样的方法可以下载百度上的文件。
原因:经排查,为安卓端采用OkHttp3下载调用进度条获取不到文件大小而出错,而进度条获取文件大小通过文件头“Content-Length”获取,推测服务端没有传该参数。
纠错:服务端输出文件流的时候添加文件头。
//HttpServletResponse resp
resp.setHeader("Content-Length", ""+file.length());