【http post】post传输数据大小
之前知道get请求对url请求长度有限制,post请求没有限制。今天在做程序的时候遇到了这个问题。
场景:我需要将前端生成的Svg图片转化base64生成字符串传入后台,后台根据字符串解码生成到PPT里面。
附:前端将svg生成图片的工具:saveSvgAsPng.js第三方js。https://github.com/exupero/saveSvgAsPng,后端将数据图片生成PPT使用的是POI。
参数传递方式
前端将svg生成base64字符串,然后以form的post方式提交,并且将每个svg的base64字符串生成一个hidden的input。
完成了开发本地测试没问题。发到测试环境用户测试时,发现下载PPT下不下来。浏览器提示如下:
本地调试发现在用httprequest拿参数时,为空。
连忙去点击其他下载看看,结果都能下载下来,ok。百思不得其解,于是去看了看这个request的图片的数量,发现一共有62个,想了想会不会是post传输数据的限制,于是我修改数据减少图片的数量,当减少到45个的时候,PPT下载下来了。这么看来确实是psot请求限制的问题。
查了相关资料,关于http get和post,本身http协议是没有限制其传输数据的大小的,主要在于浏览器与后台server的限制。
get请求参数限制
下面get请求浏览器最大处理能力说明.
Microsoft Internet Explorer (Browser)
IE浏览器对URL的最大限制为2083个字符,如果超过这个数字,提交按钮没有任何反应。
Firefox (Browser)
对于Firefox浏览器URL的长度限制为65,536个字符。
Safari (Browser)
URL最大长度限制为 80,000个字符。
Opera (Browser)
URL最大长度限制为190,000个字符。
Google (chrome)
URL最大长度限制为8182个字符。
Apache (Server)
能接受最大url长度为8,192个字符。
Microsoft Internet Information Server(IIS)
能接受最大url的长度为16,384个字符。
post请求参数限制
post请求理论上没有限制,主要是后台服务器做的限制,比如在Tomcat下取消POST大小的限制(Tomcat默认2M).
打开tomcat目录下的conf目录,打开server.xml 文件,修改
<Connector port="8080" protocol="HTTP/1.1"connectionTimeout="20000"redirectPort="8443" maxPostSize="0" />
maxPostSize="0" (设为0是取消POST的大小限制)。
关于maxPostSize在不同tomcat版本下还有不一样,tomcat7.0.63之前该值设置0或者负数代表不限制,tomcat7.0.63之后设置0会导致数据提交不到后台,设置负数则代表不限制post参数大小,慎之!我的版本是7.0.61,所以设置为0
修改之后,成功下载!
参考:https://www.cnblogs.com/joechinochl/articles/6047145.html
战如熊虎,不惜屈命!
【http post】post传输数据大小相关推荐
- FAILED BINDER TRANSACTION (Android Binder传输数据大小限制)
Android源代码中大小设置 http://androidxref.com/9.0.0_r3/xref/frameworks/native/libs/binder/ProcessState.cpp# ...
- 【FAQ】【HarmonyOS】鸿蒙java开发关于蓝牙通信api的传输数据大小设置
[问题描述] 在使用BlePeripheralDevice类的writeCharacteristic方法向蓝牙传输数据,如果数据长度长一点,通过串口工具发现蓝牙设备端是会分包接受数据的各个部分,那么鸿 ...
- websocket传输数据大小限制_WebSocket基础知识笔记
一.为什么需要 WebSocket? 初次接触 WebSocket 的人,都会问同样的问题:我们已经有了 HTTP 协议,为什么还需要另一个协议?它能带来什么好处? 答案很简单,因为 HTTP 协议有 ...
- websocket传输数据大小限制_踩踏websocket:发送缓冲区大小超过允许的限制
在客户端我使用Stomp进行websocket连接,服务器端使用 Spring 4 客户端我做了配置 var socket = new SockJS(urlBase + "/" + ...
- websocket传输数据大小限制_websocket设置传输大小
tomcat中有提到: If the application does not define a MessageHandler.Partial for incoming text messages, ...
- websocket传输数据大小限制_websocket 发送字符串数据上限是多少
匿名用户 1级 2017-06-07 回答 网上很多关于websocket发送数据大于大于0xFFFF(65535)的处理都是一句话"暂不处理"!!!!!所以特写此文. int W ...
- Android中关于Socket通信数据大小,内存缓冲区和数据可靠性的一点调查
关于TCP和UDP Socket通信的区别: 应用场景: UDP传输协议效率高,但不可靠: TCP传输效率低,但可靠. 传输数据大小: UDP传输数据限定在64K以下: TCP传输数据无大小限制,可进 ...
- 字符设备驱动程序 2
三.字符设备的注册 内核内部使用struct cdev结构来表示字符设备.在内核调用设备的操作之前,必须分配并注册一个或多个struct cdev.代码应包含<linux/cdev.h>, ...
- HTTP and HTML
一.HTTP协议简介 1.互联网=物理连接介质+互联网协议 2.互联网建立的目的? 用于打破地域限制来进行数据传输 3.什么是上网? 用户上网的过程即浏览器向服务端发送请求,然后将服务端主机的文本文件 ...
最新文章
- nginx 301重定向带www的https链接配置方法
- linux 内核dmesg,linux內核調試kmsg,dmesg
- Linux dbm轻量级数据库介绍与使用
- *【洛谷 - P1025】数的划分(dfs 或 dp 或 母函数,第二类斯特林数Stirling)
- C++:34---union:联合/共用体,一种节省空间的类
- extjs TabPanel 监听激活事件
- 硬盘格式化了的数据找到办法
- 概率软逻辑(PSL,Probabilistic soft logic)通用(可处理中文)版本
- CUDA+cuDNN下载安装(配备GPU环境)
- windows运行命令大全
- 小米正式递交上市招股书:雷军股权绝对掌控
- 极简主义下,Effie与幕布的碰撞,思维导图的正确打开方式?
- 郑州共享门店系统开发优势有哪些?
- C语言(谭浩强版本,主讲人:小甲鱼)P41-P49
- css中a标签中去掉下划线注意事项
- 程序设计与算法 | (3) 输入输出与运算符、表达式
- 一节计算机课作文500,难忘的一节课作文500字4篇
- 用AI技术分析情商 川普和克林顿谁更胜一筹?
- 试题 算法提高 Monday-Saturday质因子
- 转:经典Excel VBA代码