2010-09-09 64 views
0

可能重复:
Ordering of values in HttpServletRequest.getParameterValues()请求帕拉姆订购

我们基于J2EE的Web应用程序。在服务器端,我们希望以与客户端浏览器发送的顺序完全相同的顺序获取参数。 我们尝试了request.getParameterMap()和request.getParameterNames(),但这些方法不会以与客户端浏览器发送的顺序相同的顺序返回参数。

我们怎样才能以完全相同的顺序在客户端浏览器发送的参数?

+0

重复的http://stackoverflow.com/questions/2317281/ordering-of-values-in-httpservletrequest-getparametervalues – skaffman 2010-09-09 11:22:23

回答

1

请求参数存储在地图的内部,因此您不应该对它们的顺序做任何假设。

但是,你为什么不直接阅读它们,然后对它们进行排序呢?

0

这甚至不涉及Java。 你甚至不能依靠浏览器以特定的顺序发送请求参数。 除了@mgamer指出的那样,你不能对参数顺序做出假设。

如果您需要按照某种预定义的顺序阅读参数,您可以做些什么,即创建一些方案,您可以轻松地做到这一点。例如发送一个JSON对象或使用一些简单的格式,如param1=val&param2=another-val

+1

这是梅尔默的答案,我刚刚编辑了一个错字。 – Bozho 2010-09-09 13:01:17

+0

哎呀,对不起@bozho – 2010-09-18 19:34:25

0

我不知道为什么我们需要依赖发送参数的顺序。你能否知道为什么要这样做,可能是你可以用其他方法解决问题。