我正在创建一个端点(使用Jersey注释),它接收一个字符串列表作为它的参数。字符串需要包含键和值。 所以在网址上它看起来像
?params=key1=value1¶ms=key2=value2¶ms....
两个问题:
显然,最标准的方法是将RHS作为关键,并且等号的LHS将是值。问题是我不想在我的方法签名中定义每个可能的键值对。我想接受一般的键和值列表,让用户传入与其查询相关的对。
到目前为止,我已经尝试过多次谷歌查询但尚未找到答案:
答案 0 :(得分:1)
是。泽西可以处理它,即使=
密钥和值之间没有编码。如果查询参数是params=key1=value1¶ms=key2=value2
,下面的参数列表将是[key1=value1, key2=value2]
@GET
public Response q34211549(@QueryParam("params") List<String> params) {
//parse params list and convert it into key and value
}
你也可以考虑创建一个ParamConverter让Jersey为你做这个转换。
参考