【http post】post传输数据大小 |
您所在的位置:网站首页 › 400kb是多少k › 【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 文件,修改 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
|
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |