我目前正在编写一个通过get参数传递数据的API,所以我想知道URL或参数值的总长度是在最佳实践中还是通过协议限制。
答案 0 :(得分:13)
http://www.boutell.com/newfaq/misc/urllength.html
基本上,2K是您在跨浏览器方面可以信赖的最多,但如果您放弃对IE 8及以下版本的支持,您可以使用64K。
虽然我觉得我需要质疑你是否需要知道这一点,但任何超过100个字符最好通过POST请求而不是GET来处理。
答案 1 :(得分:5)
只需在第{3.2.1节:
中添加HTTP 1.1 RFC中的规范参考....HTTP协议没有对长度进行任何先验限制 一个URI。服务器必须能够处理它们的任何资源的URI 服务,并且应该能够处理无限长度的URI 提供可以生成此类URI的基于GET的表单。一台服务器 如果URI更长,应该返回414(Request-URI Too Long)状态 服务器可以处理(见10.4.15节)。
Note: Servers ought to be cautious about depending on URI lengths above 255 bytes, because some older client or proxy implementations might not properly support these lengths.
答案 2 :(得分:0)
没有官方限制,所以它受到不同浏览器的支配。