情景是这样的,我在android客户端上传图片到服务器,服务器接收到我上传的图片后会生成一张对应的小图并把图片在服务器保存的地址返回给我。当我批量上传图片到服务器超过120张的时候,服务器会返回给我一个413错误。刚才说了,服务器会根据上传的图片生成一张对应的小图,如果我把生成小图这个参数去掉的话,批量上传150张都没有问题。但是如果需要服务器生成小图,超过120张就报错413了。通过抓包以及debug查看,。因为这个请求分为上传到服务器,服务器处理数据后在给客户端一个数据的返回这是一个完整的请求。那么这里把请求划分为2个部分,一个是上传部分,一个是下载部分(服务器处理接收到的数据算为下载部分)。上面的图片是抓包的截图,表示请求该接口时上传数据部分。
此张图片表示的是请求接口时的第二部分,下载数据 部分,服务器处理数据的时间超过2分钟后,也就是刚第二张图片那个接口箭头向下的时间超过2分钟(这里的时间是通过打印log来得知的,图中箭头部分的第一个时间是表示上传部分完成的时间,第二个时间表示报错的时间
)后,就会报错413
----这里报错的具体信息为** Response{protocol=http/1.1, code=413, message=Request Entity Too Large}^^^^^^^java.lang.IllegalArgumentException: rawResponse must be successful response
**。请问这个是什么原因,是服务器处理时间太久了吗?导致报错,但是为什么会报413错误啊,而不是408请求超时。不是数据太大的原因,因为如果不加生成小图的参数,服务器不把上传的图片生成小图,处理时间相对很短,不会超过2分钟的时间,那么上传200张图片都没有问题,但是如果一加上生成小图的参数,服务器处理的时间会相对的变长,此时即使是130张图片也会报错。请问这个是和服务器什么参数设置有关啊?或是因为什么原因产生的这个问题啊?
关注
码龄 粉丝数 原力等级 --
- 被采纳
- 被点赞
- 采纳率

已采纳
Android客户端上传文件到服务器报错413
收起
- 写回答
- 好问题 0 提建议
- 关注问题
微信扫一扫
点击复制链接分享
- 邀请回答
- 编辑 收藏 删除 结题
- 收藏 举报
2条回答 默认 最新
- 关注
码龄 粉丝数 原力等级 --
- 被采纳
- 被点赞
- 采纳率
发红的茶叶水 2017-05-25 08:53关注不知道楼主的问题解决了没有,日志信息显示java.lang.IllegalArgumentException 非法参数,但是按照服务器的返回码看413应该是发布或者上传的内容超过
当前设置的最大值了,一般默认的是1M,所以需要改一下默认配置大小本回答被题主选为最佳回答 , 对您是否有帮助呢? 本回答被专家选为最佳回答 , 对您是否有帮助呢? 本回答被题主和专家选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏举报微信扫一扫
点击复制链接分享
编辑预览轻敲空格完成输入- 显示为
- 卡片
- 标题
- 链接
评论按下Enter换行,Ctrl+Enter发表内容
编辑
预览

轻敲空格完成输入
- 显示为
- 卡片
- 标题
- 链接
报告相同问题?
提交
- 2022-05-04 12:55回答 1 已采纳 提示是说要使用android.permission.ACCESS_FINE_LOCATION 进行精确定位,必须配合另外一个权限一起进行声明。android.permission.ACCESS_COA
- 2021-11-21 07:36回答 1 已采纳 OnFragmentInteractionListener 就没有定义吧
- 2022-09-01 17:42回答 2 已采纳 可参考 AVD 创建 之 “An Android Virtual Device that fail to load"_u010181529的博客-CSDN博客
- 2021-08-05 06:03墨然隳绶的博客 需求就是上传文件到服务器,服务器的存储地址由程序决定然后可以自动创建。使用第三方:jschJSch 是SSH2的一个纯Java实现。它允许你连接到一个sshd 服务器,使用端口转发,X11转发,文件传输等等。你可以将它的功能...
- 2016-04-09 02:23回答 3 已采纳 http://www.cnblogs.com/top5/archive/2013/03/07/2947344.html
- 2019-01-19 06:09回答 3 已采纳 看下你的app的权限是否足够,要有读取本地存储的权限才可以
- 2020-11-03 15:23回答 1 已采纳 OkHttp不支持直接传bitmap,但可以传递字节流数据,将bitmap转为InputStream就可以上传 ``` ByteArrayOutputStream baos = new ByteA
- 2015-09-12 10:46yu-Knight的博客 * android上传文件到服务器 * @param file 需要上传的文件 * @param RequestURL 请求的rul * @return 返回响应的内容 */ public static String uploadFile(File file,String RequestURL) { String ...
- 2017-03-27 07:18回答 1 已采纳 http://blog.csdn.net/xiangaaa190/article/details/45600497
- 2022-05-11 01:45回答 1 已采纳 View包导入了吗
- 2020-02-25 06:44回答 2 已采纳 配置中查看自己的sdk是否匹配
- 2024-09-19 03:13般若之镜的博客 简介:本文详细介绍了在Android平台上实现上传功能的方法,包括通过HTTP/HTTPS协议上传数据到服务器的基本原理。通过实例代码演示了使用HttpURLConnection和OkHttp进行文件上传的过程,并讨论了处理文件元数据、...
- 2022-01-30 06:35sa3221sa的博客 新建LoginServlet,如果报错,自行导入servlet库(项目属性->Build Path->add Libraries),安装了tomact也有这个。 查看配置文件,位于项目根目录WEB-INF/web.xml,确保有url映射。 LoginServlet /servlet/...
- 2022-01-10 05:37m0_66145060的博客 从 Android 应用层来说,Binder 是客户端和服务器端进行通信的媒介,当 bindService 的时候,服务端会返回一个包含了服务端业务调用的 Binder 对象。 Binder 相较于传统 IPC 来说更适合于Android系统,具体原因的...
- 2021-08-06 05:42Mars Zhu的博客 ftp 服务器连接被重置 内容精选换一换FTP/SFTP连接适用于从线下文件服务器或ECS服务器上迁移文件到OBS或数据库。当前仅支持Linux操作系统的FTP 服务器。连接FTP或SFTP服务器时,他们的连接参数相同,如表1所示。FTP/...
- 没有解决我的问题, 去提问
联系我们(工作时间:8:30-22:00)
400-660-0108kefu@csdn.net在线客服
- 京ICP备19004658号
- 经营性网站备案信息
公安备案号11010502030143
- 营业执照
- 北京互联网违法和不良信息举报中心
- 家长监护
- 中国互联网举报中心
- 网络110报警服务
- Chrome商店下载
- 账号管理规范
- 版权与免责声明
- 版权申诉
- 出版物许可证
- ©1999-2025北京创新乐知网络技术有限公司