Spring URL:“/test”和“/test”之间存在差异和“/测试/”在控制器映射中

发布于 2024-11-01 09:17:54 字数 709 浏览 0 评论 0原文

简单的 Spring 控制器示例(如果您不熟悉 Spring,只需查看输出 html):

@Controller
@RequestMapping("test")
public class TestController {
    @RequestMapping("")
    @ResponseBody
    public String pathTest(){
        return "<html><head></head><body><a href='subpath'>subpath</a></body></html>";
    }
}

如果我转到 http://mydomain/test,则上述 html 中的链接将转到: http://mydomain/subpath

如果我转到 http://mydomain/test/,上面 html 中的链接将转到:http:// mydomain/test/subpath

我想这很简单,但我不知道如何确保尾随的“/”不会影响应用程序功能。我主要担心的是,当用户手动更改 URL 时,他们可能会也可能不会留下结尾的“/”。

无论最后的“/”是否存在,我该如何确保我的应用程序能够正常工作?

Simple example spring controller (if you're not familiar with spring, just look at the output html):

@Controller
@RequestMapping("test")
public class TestController {
    @RequestMapping("")
    @ResponseBody
    public String pathTest(){
        return "<html><head></head><body><a href='subpath'>subpath</a></body></html>";
    }
}

If I go to http://mydomain/test, the link from the above html goes to: http://mydomain/subpath

If I go to http://mydomain/test/, the link from the above html goes to: http://mydomain/test/subpath

I guess this is simple, but I don't know how to ensure that the trailing '/' doesn't affect the application function. My primary concern is when users manually change the URL, they may or may not leave the trailing '/'.

What can I do to ensure my application works the same whether or not the final '/' exists?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

猥︴琐丶欲为 2024-11-08 09:17:54

不返回 subpath 返回

subpath > 相反。

Do not return <a href='subpath'>subpath</a> return

<a href='/test/subpath'>subpath</a> instead.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文