gpt4 book ai didi

java - Spring HATEOAS ControllerLinkBuilder 删除尾部斜线?

转载 作者:塔克拉玛干 更新时间:2023-11-02 20:03:55 28 4
gpt4 key购买 nike

我正在尝试将 Spring HATEOAS 合并到现有的服务工具和 REST API 中。但是,我遇到的问题之一是 ControllerLinkBuilder 似乎删除了尾部斜杠(这是由于现有约束的要求)。是否有一些解决方法或方法可以将该尾部斜杠添加到链接中?

 user.add(linkTo(UserController.class).slash("user").slash(user.getUsername() + "/").withRel("Get User Details"));

(用户扩展 ResourceSupport)

我也试过 .slash("") 无济于事。

输出:

"http://localhost:8080/REST/user/<username>"

最佳答案

据我所知,不仅仅是使用链接生成器。 LinkBuilders 使用 UriComponents 来解析它。然后它遍历每个段并将它们添加回 UriComponents 构建器。 stuff/ 进入 UriComponents,但 stuff 就是全部输出。

你可以做的是以循环方式创建一个链接,例如:

user.add(
new Link(
linkTo(UserController.class).slash("user").slash(user.getUsername())
.toUriComponentsBuilder().build().toUriString() + "/",
"Get User Details"
)
);

可能有更简单的方法……但您明白了。 Link 似乎没有向您介绍 UriComponents 的内容

关于java - Spring HATEOAS ControllerLinkBuilder 删除尾部斜线?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24640231/

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