spring-boot - spring boot、jax-rs、jersey中无法识别多个URL查询参数
问题描述
在将 curl 命令中的多个查询参数传递到我的 Spring Boot 服务器时遇到问题,该服务器使用 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 用引号括起来。&
在命令行上有特殊的含义。
推荐阅读
- entity-framework - WebAPI - 具有 DbContext 对象创建的存储库类
- tableau-api - Compare years in Tableau when you have months on another axis
- scala - 了解 monix 消费者负载平衡
- c++ - How to detect shape in openCV?
- r - How to remove function defs from RStudio's code outline for more clarity?
- java - 在 Spring Boot 应用程序中上传 1+ GB 文件时出现“java.lang.OutOfMemoryError:Java 堆空间”
- python-3.x - Python3 - Pandas 计算存储日期和当前日期之间的时间差
- docker - Docker Hub 上的 jenkinsci 和 jenkins 有什么区别?
- android - Android 后台位置更新 - Kitkat 和 Marshmallow 设备中不同数量的 LatLong
- android - 找不到设备 Flutter VSCode 模拟器