0

当 servlet 参数在请求中重复时,如

city=London&city=Paris

处理程序可以获取city参数的字符串值数组。

现在想象一下,我希望呼叫者也能够提供每个城市的温度。换句话说,提供不确定数量的值对。呼叫者需要有一种方法将城市与其温度联系起来。我当然不想指望任何类型的隐式排序,如果有的话:

city=London&city=Paris&temp=13&temp=15    # this can't be a good idea

有没有首选的方法来解决这个问题?还是一个解释清楚的“不要那样做”?

我能想到各种选择。在一个参数中结合城市和温度:

cityTemp=London,13&cityTemp=Paris,15

每个提供的城市的动态命名临时参数:

city=Paris&city=London&temp.Paris=15&temp.London=13

对应列表代替重复参数:

cities=Paris,London&temps=15,13

当然,我可以完全放弃简单的名称-值参数,让调用者发布 XML 或 JSON。

我不能说我喜欢这些解决方案中的任何一个,但如果一个更标准或具有某些优势,那就太好了。我没有任何运气来搜索这个问题。我不知道我是否使用了正确的术语,搜索结果不佳,或者我正在尝试做的事情偏离了目标。

4

1 回答 1

0

如果您必须绑定的参数不多,我建议您使用逗号分隔的参数值作为键值对。

cityTemp=London,13&cityTemp=Paris,15

这将确保您将使用您的密钥获得预期的价值。

于 2013-04-01T07:55:41.037 回答