当前位置: 首页 > 知识库问答 >
问题:

Spring:在上下文路径后需要尾随斜杠

云德辉
2023-03-14

我有一个Spring Boot1.3应用程序,其中server.contextpath=/ts处于开发模式。

在浏览器中,我可以访问http://localhost:8888/ts或http://localhost:8888/ts/

谢了。

共有1个答案

阎德宇
2023-03-14

这是非常正常的,您甚至可以通过测试Java.net.url在Java上测试这一点。本质上,您有以下组合:

http://foo.com/example/bar/+baz->http://foo.com/example/bar/baz http://foo.com/example/bar/+./baz->http://foo.com/example/bar/+./baz->http://foo.com/example/bar/+/baz->http://foo.com/example/bar/baz但是!http://foo.com/example/bar+baz->http://foo.com/example/baz http://foo.com/example/bar+./baz->http://foo.com/example/bar+../baz->http://foo.com/example/bar+/baz->http://foo.com/example/bar+/baz

我建议只需转到浏览器的历史记录并删除无斜杠版本,您将不会得到任何更多的自动完成建议。如果这样做不符合您的要求,那么添加一个servlet过滤器,当最后一个斜杠丢失时,该过滤器将重定向到正确的页面。

 类似资料:
  • 问题内容: 例如,采取以下两条路线。 根据文档,可以理解以下内容: 在第一种情况下,对路线的请求将返回404响应。已验证。 在第二种情况下有效,并将重定向到 我想看到的行为是 “逆” 的 情况下,两个 行为。例如将重定向到而不是其他方式。有没有办法定义采取此行为的途径? 根据我的理解,可以在路由上设置有效地获得第一种情况下第二种情况下的相同行为,但是我想做的是获得重定向行为,以始终将其重定向到UR

  • 问题内容: 我尝试使用以下代码段设置spring rest模拟的上下文路径: 但是我收到以下错误: 怎么了? 是否可以在代码中的单个位置(例如直接在构建器中)指定contextPath? 这里的控制器 问题答案: 您需要在传递到的路径中包括上下文路径。 在问题中显示的情况下,上下文路径为并且您想向其发出请求,因此您需要传递给:

  • 我想更改spring Boot2的上下文路径,例如,我想在http://localhost:8080/test/上服务 我的意思是,spring-boot-starter-webflux:2.0.0对我来说不起作用

  • 我使用Spring启动与网络通量和删除嵌入的tomcat依赖从初学者网络,我想添加基本上下文路径为我的应用程序,有什么办法我可以做??我需要这个,因为我有在kubernetes集群和重定向基于上下文路径的ingrees属性。

  • 我将Spring Boot与Jetty一起使用,当我从servletContext获取路径时。getRealPath(“/”)结果如下: 但应该像那样或至少类似于: 还有一个有趣的事实是,如果我有webapp文件夹,jetty会在其中使用这个文件夹,比如servlet context和servlet context。getRealPath(“/”)将返回正常路径。 为什么Jetty对servlet

  • 我有以下项目结构: src/main/resources/meta-inf/applicationcontext.xml src/webapp/web.xml .另外,在构建部分的pom.xml中,我将最终名称设置为“bet-manager-api”。我做错了什么?为什么没有伐木?我检查了tomcat/logs/中的所有日志,但没有找到任何重要的日志。谢谢