gpt4 book ai didi

java - 在 JAX-RS UriInfo 中按顺序检索查询参数

转载 作者:行者123 更新时间:2023-11-30 03:45:42 25 4
gpt4 key购买 nike

在 JAX-RS 中,我需要迭代请求中的(任意)给定查询参数...但按照 URI 中的原始顺序!

如果我注入(inject)@Context UriInfo uriInfo,那么我可以使用uriInfo.getQueryParameters()来获取分组的查询参数的MultivaluedMap通过查询参数名称。但是如果我关心所有查询参数的原始顺序怎么办?有没有办法简单地迭代名称/值对?或者我必须从 uriInfo.getRequestUri() 手动提取它们?

如果我坚持手动提取,是否有一些标准或维护良好且更新的库可以用来执行此操作?

最佳答案

在 jax-rs 以及其他 REST/Web 框架中,查询参数会转换为无序映射(在 jax-rs MultivaluedMap 中)。此外,正在解析参数的库也以无序的方式返回它们。我认为对于这种特殊情况,您需要实现自己的解析解决方案,它将参数放入 LinkedHashMap。看看现有的自定义解析解决方案here .

您可以使用以下方式检索查询字符串(请注意,该字符串已被解码):

uriInfo.getRequestUri().getQuery()

但是您可能知道,您的解决方案不应依赖于查询参数的顺序。

关于java - 在 JAX-RS UriInfo 中按顺序检索查询参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25767182/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com