GET请求中URL的最大长度限制总结
由于jsonp跨域请求只能通过get请求,url长度根据浏览器及服务器的不同而有不同限制。 若要支持IE的话,最大的长度为2083字符,若是中文字符的话只有2083/9=231个字符。 若是Chrom...

今天在写一个php相应jsonp请求的功能时,发现当url中包含的请求参数过长时会返回414错误。
如下图

<html><head><title>414 Request-URI Too Large</title></head><body bgcolor="white"><center><h1>414 Request-URI Too Large</h1></center><hr><center>nginx</center></body></html>
在网上查询之后,浏览器和服务器对url长度都有限制,现总结如下。
浏览器
1、IE
IE浏览器(Microsoft Internet Explorer) 对url长度限制是2083(2K+53),超过这个限制,则自动截断(若是form提交则提交按钮不起作用)。
2、firefox
firefox(火狐浏览器)的url长度限制为 65 536字符,但实际上有效的URL最大长度不少于100,000个字符。
3、chrome
chrome(谷歌)的url长度限制超过8182个字符返回本文开头时列出的错误。
4、Safari
Safari的url长度限制至少为 80 000 字符。
5、Opera
Opera 浏览器的url长度限制为190 000 字符。Opera 9 地址栏中输入190 000字符时依然能正常编辑。
服务器
1、Apache
Apache能接受url长度限制为8 192 字符
2、IIS
Microsoft Internet Information Server(IIS)能接受url长度限制为16 384个字符。
这个是可以通过修改的(IIS7)configuration/system.webServer/security/requestFiltering/requestLimits@maxQueryStringsetting.<requestLimits maxQueryString="length"/>
3、Perl HTTP::Daemon
Perl
HTTP::Daemon 至少可以接受url长度限制为8000字符。Perl HTTP::Daemon中限制HTTP request
headers的总长度不超过16 384字节(不包括post,file uploads等)。但当url超过8000字符时会返回413错误。
这个限制可以被修改,在Daemon.pm查找16×1024并更改成更大的值。
4、ngnix
可以通过修改配置来改变url请求串的url长度限制。
client_header_buffer_size 默认值:client_header_buffer_size 1k
large_client_header_buffers默认值 :large_client_header_buffers 4 4k/8k
由于jsonp跨域请求只能通过get请求,url长度根据浏览器及服务器的不同而有不同限制。
若要支持IE的话,url长度限制为2083字符,若是中文字符的话只有2083/9=231个字符。
若是Chrome浏览器支持的最大中文字符只有8182/9=909个。
GET请求中URL的最大长度限制总结的更多相关文章
- (转)HTTP请求中URL地址的编码和解码
HTTP请求中,类似 http%3A%2F%2Fwww.baidu.com%2Fcache%2Fuser%2Fhtml%2Fv3Jump.html 的地址 如何解码成 http://www ...
- 在IE浏览器中url传参长度问题
1.在这之前我一直以为,应该说是并没有去思考过,url地址传参的长度限制问题:知道在项目材料价格系统中遇到之后,才对这个问题进行了具体的探索.IE中最大的长度限制为2084个,用于get传递数据的长度 ...
- get请求中url传参中文乱码问题--集锦
一:get请求url中带有中文参数,有三种方式进行处理防止中文乱码 1.如果使用tomcat作为服务器,那么修改tomcat配置文件conf/server.xml中,在 <Connector ...
- get请求中url传参中文乱码问题
在项目中经常会遇到中文传参数,在后台接收到乱码问题.那么在遇到这种情况下我们应该怎么进行处理让我们传到后台接收到的参数不是乱码是我们想要接收的到的,下面就是我的一些认识和理解. 一:get请求url中 ...
- HTTP 请求方式: GET和POST的比较当发送数据时,GET 方法向 URL 添加数据;URL 的长度是受限制的(URL 的最大长度是 2048 个字符)。
什么是HTTP? 超文本传输协议(HyperText Transfer Protocol -- HTTP)是一个设计来使客户端和服务器顺利进行通讯的协议. HTTP在客户端和服务器之间以request ...
- curl请求的url中含有空格
curl请求的url中含有空格时(例如rul的参数是sql查询语句,url=www.tets.com/query.php?sql=select * from t1),curl_easy_perform ...
- django中url,静态文件,POST请求的配置 分类: Python 2015-06-01 17:00 789人阅读 评论(0) 收藏
平时使用的是pycharm,所以这篇文章主要也是使用pycharm默认创建的django项目为基础进行讲解.项目目录如下图: 1.URL的配置 当创建好项目后,运行项目就可以看到django默认的页面 ...
- get请求中的url encode问题
首先发表一下感慨,Python的requests模块确实太简便,省却了很多的转码等等等等的问题,但这也是缺点,对于我这种基础不好的同学来说让我少知道了许多本来应该知道的东西. url encode: ...
- POST请求中,往URL传递数组
POST请求中,前端/客户端需要手动拼接URL,然后走接口跟后端交互. 若想传递数组,可以按照如下的拼接形式: &materialsTypeId=11&materialsTypeId= ...
随机推荐
- idhttp的用法
1)POST function PostMethod(http: TIDhttp; URL: string; Params: TStringList): string;var RespData: TS ...
- Thrift中实现按照时间戳范围操作Hbase数据
在一次做项目的过程中,要实现一个功能,功能描述为前端给定日期范围,在该日期范围内取出指定行的信息.在Thrift常用的API中,取出一行所有的数据接口为getVer(),getver()具体描述如下: ...
- python数据处理相关的一些知识点(学习点)
自己总结了一下就是存储,消息处理(异步,阻塞,队列,消息中间件) 参考岗位需求 数据爬虫工程师的岗位职责:1.分布式网络爬虫研发:不断完善现有抓取系统,通过对抓取.解析.调度.存储等模块的拆分与优化, ...
- Python学习笔记异常
在程序代码中,可能会有各种错误的情况出现,且产生错误的结果是后面的代码都无法执行,即使是一点无关紧要的错误,如图: 在这样的情况下,我们需要异常处理,对程序代码中的错误抛出异常信息,且不影响后面的代码 ...
- qt显示视频
针对qt4的(视频格式为rgb32) v4l_grab_movie(&v4l_dev); unsigned char *pBuffer= v4l_dev.buffer; QIm ...
- maven 配置篇 之pom
maven 配置篇 之pom.xml(一) 博客分类: pm mavenXML配置管理项目管理junit 说完了settings.xml配置,下来说一下maven2的主要配置pom.xml ...
- (Python)序列
本节将学习一些循环序列的方法已经序列的大小比较规则 1.循环序列的方法 如果我们想同时循环打印一个列表的index和value,我们可以用enumerate(list) 函数 >>> ...
- android system.img
哥们要我做些模拟包,给过来的是mtk的底包,需要从system.img中提取部分文件. 网上一找资料,说是yaffs2文件系统,同时以前做linux的时候也是用yaffs2,感觉碰到老朋友了,不管三七 ...
- Apache+PHP配置运行环境(getenv的使用)
在开发与上线等多个环境下,常量的配置一般不同,例如开发环境和生产环境的一些域名肯定不一样,为了保证代码上线就能运行,要求在代码运行开始的时候对不同的环境区分这些常规变量. 找到Apache目录下虚拟主 ...
- [Leetcode][JAVA] Word Ladder
Given two words (start and end), and a dictionary, find the length of shortest transformation sequen ...