@PathVariable 和@RequestParam 不能一起工作
@PathVariable and @RequestParam not working together
我的控制器中有以下代码:
@RequestMapping(value = "/child/{nodeId}/{relType}",method = RequestMethod.GET, produces=MediaType.APPLICATION_JSON)
public Iterable<Node> getConnectedNodes(@RequestParam("page")int page, @RequestParam("size")int size, @PathVariable("nodeId") String nodeId, @PathVariable("relType") String relType) {
return nodeService.getConnectedNodes(nodeId, relType,page,size);
}
这就是我打的 API URL
http://localhost:8080/node/child/e17a64ff-dc2b-49b1-a995-67dba9413d67/Collegues?page=0&size=1
在调试模式下,我可以看到路径变量的值,即 nodeId
和 relType
,但看不到请求参数 page
和 size
的值我正在通过上面 URL 中的请求。
@RequestParam 有什么问题?
你能试试下面的代码片段吗:
@RequestMapping(value = "/child/{nodeId}/{relType}",method = RequestMethod.GET, produces=MediaType.APPLICATION_JSON)
public Iterable<Node> getConnectedNodes(@RequestParam(value="page", required=false) int page, @RequestParam(value="size", required=false) int size, @PathVariable("nodeId") String nodeId, @PathVariable("relType") String relType) {
return nodeService.getConnectedNodes(nodeId, relType,page,size);
}
我的控制器中有以下代码:
@RequestMapping(value = "/child/{nodeId}/{relType}",method = RequestMethod.GET, produces=MediaType.APPLICATION_JSON)
public Iterable<Node> getConnectedNodes(@RequestParam("page")int page, @RequestParam("size")int size, @PathVariable("nodeId") String nodeId, @PathVariable("relType") String relType) {
return nodeService.getConnectedNodes(nodeId, relType,page,size);
}
这就是我打的 API URL
http://localhost:8080/node/child/e17a64ff-dc2b-49b1-a995-67dba9413d67/Collegues?page=0&size=1
在调试模式下,我可以看到路径变量的值,即 nodeId
和 relType
,但看不到请求参数 page
和 size
的值我正在通过上面 URL 中的请求。
@RequestParam 有什么问题?
你能试试下面的代码片段吗:
@RequestMapping(value = "/child/{nodeId}/{relType}",method = RequestMethod.GET, produces=MediaType.APPLICATION_JSON)
public Iterable<Node> getConnectedNodes(@RequestParam(value="page", required=false) int page, @RequestParam(value="size", required=false) int size, @PathVariable("nodeId") String nodeId, @PathVariable("relType") String relType) {
return nodeService.getConnectedNodes(nodeId, relType,page,size);
}