我正在构建同时使用HTTP内容和HTTP标头发送和接收数据的AJAX应用程序。是否存在由于HTTP标头太大而无法从HTTP标头接收的数据的问题?如果是,限制是什么,并且在所有浏览器中的行为都一样吗?
我知道从理论上讲HTTP头的大小没有限制,但是在 实践中,有 什么意义呢,在某些平台,浏览器或客户端计算机或计算机上安装的某些软件下,我可能会遇到问题。我正在寻找有关使用HTTP标头的安全实践的指南。换句话说,在没有潜在问题的情况下,HTTP标头最多可以用于传输其他数据?
谢谢您,对于这个问题的所有投入,我们非常感激和有趣。托马斯的答案得到了赏金,但是乔恩·汉纳的答案提出了关于代理人的一个很好的观点。
在实践中,虽然有一些规则禁止代理不传递某些标头(实际上,相当明确的规则可以对其进行修改,甚至禁止如何通知代理它是否可以修改由更高标准添加的新标头),但这仅是适用于“透明”代理,并非所有代理都是透明的。特别是,某些不了解的擦除标头是故意的安全实践。
另外,在实践中,某些工具的行为不当(尽管情况比以前要好得多)。
因此,除了显而易见的核心标头之外,您可以依靠的标头信息量(从服务器传递到客户端)为零。
这只是您永远不应该依赖标头使用得很好的原因之一(例如,准备让客户端重复请求它应该缓存的内容,或者让服务器在您请求范围时发送整个实体) ),除非出现身份验证标头的明显情况(根据“不安全的原则”)。