HTTP标头对浏览器来说太大了吗?

问题描述 投票:17回答:5

我正在构建同时使用HTTP内容和HTTP标头发送和接收数据的AJAX应用程序。是否有一点因为从HTTP标头接收到的数据太大而导致浏览器无法读取它?如果是,限制是什么,并且在所有浏览器中的行为都一样吗?

我知道理论上对HTTP标头的大小没有限制,但是在practice中,有什么意义呢,在某些平台,浏览器或客户端计算机上安装的某些软件下,我可能会遇到问题或机器。我正在寻找有关使用HTTP标头的安全实践的指南。换句话说,在没有潜在问题的情况下,HTTP标头最多可以用于传输其他数据?


谢谢您对此问题的所有投入,这是非常感谢和有趣的。托马斯的答案得到了赏金,但是Jon Hanna's answer提出了关于代理的一个很好的观点。

我正在构建同时使用HTTP内容和HTTP标头发送和接收数据的AJAX应用程序。是否存在浏览器无法读取从HTTP标头接收的数据的问题...

ajax http-headers browser
5个回答
8
投票

[在实践中,虽然有一些规则禁止代理不传递某些标头(实际上,相当明确的规则可以对其进行修改,甚至还包括如何通知代理其是否可以修改由更高标准添加的新标头的规则),这仅适用于“透明”代理,并非所有代理都是透明的。特别是,一些不了解的擦除标头是故意的安全实践。


44
投票

简短回答:


4
投票

两件事。


2
投票

HTTP / 1.1的RFC显然不限制标题或正文的长度。

根据此页面,现代浏览器(Firefox,Safari,Opera),除IE之外,都可以处理very

个长URI:https://web.archive.org/web/20191019132547/https://boutell.com/newfaq/misc/urllength.html。我知道它与接收标头不同,但至少表明它们可以创建和发送巨大的HTTP请求(长度可能不受限制)。

1
投票

从理论上讲,浏览器中可以发送的数据量没有限制。几乎就像在说网页正文中的内容数量有一个限制。

[如果可能,请尝试通过文档正文传输数据。为了安全起见,请考虑将数据拆分,以便进行多次加载。

© www.soinside.com 2019 - 2024. All rights reserved.