使用很棒的 HATEOAS 链接功能,我正在尝试输出模板化的 url 以突出显示用户可用的过滤器参数
示例控制器方法
@RequestMapping(value = "/persons", method = RequestMethod.GET, produces = "application/hal+json")
public PersonsResource getPersons (@RequestParam(required = false, value = "name") String name, @RequestParam(required = false, value = "age") Integer age) {
...
personsResource.add(ControllerLinkBuilder.linkTo(ControllerLinkBuilder.methodOn(PersonController.class).getPersons(name, age)).withSelfRel());
}
当不带参数调用此方法时,会出现链接
_links: {
self: {
href: "http://myserver:8080/persons"
}
}
但我愿意
href: "http://myserver:8080/persons?name={name}&age={age}
如果提供一个参数就更好了
href: "http://myserver:8080/persons?name={name}&age=21
锦上添花是要忽略 {...] 的查询参数吗?
有谁知道这是否可以使用 Spring HATEOAS api ?我已经设法解决了这个问题,但这似乎是对 API 的合理建议?