无法识别 spring boot、jax-rs、jersey 中的多个 URL 查询参数

Can't recognise multiple URL query parameters in spring boot, jax-rs, jersey

在将 curl 命令中的多个查询参数传递到我的 spring 启动服务器时遇到问题,该服务器使用 jersey 和 jax-rs 来提供一些端点。

这是我的 curl 命令:

curl localhost:8080/players?pageStartIndex=3&pageSize=4

我使用过滤器打印出有什么进来

@Provider
public class APIRequestFilter implements ContainerRequestFilter {

    @Override
    public void filter(ContainerRequestContext requestContext)
             throws IOException {
        System.out.println(">>filter(), uriPath=" + requestContext.getUriInfo().getRequestUri());
        System.out.println(">>filter(), " + requestContext.getUriInfo().getQueryParameters());
        ...

这是打印出来的...

>>filter(), uriPath=http://localhost:8080/players?pageStartIndex=3
>>filter(), {pageStartIndex=[3]}

由于某些原因,只打印了第一个查询参数。

有什么想法吗?

您需要将命令行中的 url 括在引号中。 & 在命令行中有特殊含义。