OkHttp3下载文件失败

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

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

//HttpServletResponse resp
resp.setHeader("Content-Length", ""+file.length());
AI 代码解读
目录
打赏
0
0
0
0
1
分享
相关文章
ueditor上传大容量视频报http请求错误的解决方法
故障现象: 当使用百度编辑器ueditor上传大容量视频或大容量图片的时候,编辑器报“http请求错误”的解决方法详解; 原因分析: 目前很多CMS整合了百度的ueditor编辑器,但是上传稍微大一点的文件就会报错, 解决方案 1:修改相对应的ueditor\asp\config.
3075 0
java中post请求调用下载文件接口浏览器未弹窗而是返回一堆json,为啥
客户端调接口需要返回另存为弹窗,下载文件,但是遇到的问题是接口调用成功且不报错,浏览器F12查看居然返回一堆json,而没有另存为弹窗; > 正确的效果应该是:接口调用成功且浏览器F12不返回任何json,而是弹窗另存为窗口,直接保存文件即可。
196 2
【 ⑫】requests库概述(文件上传、cookies处理、状态码处理、异常处理等)
【 ⑫】requests库概述(文件上传、cookies处理、状态码处理、异常处理等)
161 0
Android端通过HttpURLConnection上传文件到服务器
Android端通过HttpURLConnection上传文件到服务器
113 0
OkHttp3代理配置与视频下载的完美结合
OkHttp3代理配置与视频下载的完美结合
基于OkHttp网络通信工具类(发送get、post请求、文件上传和下载)
okhttp是专注于提升网络连接效率的http客户端。 优点: 1、它能实现同一ip和端口的请求重用一个socket,这种方式能大大降低网络连接的时间,和每次请求都建立socket,再断开socket的方式相比,降低了服务器服务器的压力。 2、okhttp 对http和https都有良好的支持。 3、okhttp 不用担心android版本变换的困扰。 4、成熟的网络请求解决方案,比HttpURLConnection更好用。 5、支持异步发送网络请求,响应可在线程处理。
requests--文件上传,文件下载
requests--文件上传,文件下载
OkHttp3源码解析(一)之请求流程
带你从源码理解OkHttp3的原理
2773 0
okhttp3下载文件检测进度与断点续传
之前有用过retrofit来做下载的功能,虽然retrofit基于okhttp,但是这还是有点不同。 我是在做更新功能的时候用到这个,具体的操作可能不会说太多,因为网上能找到很多基本的操作,我就说下一些流程和BUG,不管是okhttp还是retrofit都适用。
2447 0
AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等