以下 HTTP url 字符串参数是如何编码和解码的? &=& 与 &&

How is following HTTP url string parameter encoded and decoded? &=& vs &&

我在浏览一些网站时偶然发现了其中的错误,同时对 url 参数进行了不同的组合。

当我将 ?&=& 附加到本网站上任何有效的 url 时,出现以下错误:/p 是 url (java.lang.ArrayIndexOutOfBoundsException) 的一部分。

Chrome 解析字符串如下:

但是当我附加 ?&& 而不是 ?&=& 时,不会引发此异常。 Chrome 将两个字符串解析为相同的内容。

注:

编辑:

我明白这个异常是什么意思。我只想知道这两种参数的解析方式是否不同。出现这种bug的可能原因是什么。

A java.lang.ArrayOutOfBoundsException 由页面的 Java 后端引起。

当 java 应用程序试图访问 Java Array 中不存在的元素时,会发生此异常。

如果不访问后端的源代码,就不可能说出这种情况究竟是如何发生的以及为什么会发生,或者 url 参数是如何处理的。

这不是由前端代码或您的浏览器引起的。