加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Java > 正文

java – Spring Boot:为RestControllers配置url前缀

发布时间:2020-12-15 03:09:06 所属栏目:Java 来源:网络整理
导读:我不是 Spring专家,而且它是黑盒子,即使使用Spring的文档,我也很难自己解决问题.有时,我只是不知道我正在寻找什么才能开始我的搜索…… 在我的Spring Boot应用程序中,我试图弄清楚如何为我的所有RestControllers配置一个唯一的url前缀. 我真正想要的就是从根
我不是 Spring专家,而且它是黑盒子,即使使用Spring的文档,我也很难自己解决问题.有时,我只是不知道我正在寻找什么才能开始我的搜索……

在我的Spring Boot应用程序中,我试图弄清楚如何为我的所有RestControllers配置一个唯一的url前缀.

我真正想要的就是从根上下文“/”中提供我的静态内容,但是可以从不同的上下文访问我的RestController端点,比如“/ api / *”.

我知道如何通过application.properties更改应用程序的默认上下文,但这不是我想要的.当谈到servlet,映射等时,我在这里表现出我的无知,因为我说我正试图为两种不同类型的内容获得两种不同的上下文.

解决方法

我认为这是一个有效的观点,尽管将它分成两个(或更多应用程序)是很常见的.假设您要处理(1)提供HTML / CSS / JS的网站和(2)REST API.在控制器之上,您可以使用@RequestMapping来定义“上下文”(您不能有两个,因此这些将在不同的控制器中,同样取决于您要实现的目标):

> @RequestMapping(/ web)
> @RequestMapping(/ api / v1)

…然后在这些控制器中,在方法中,您可以再次使用@RequestMapping(value =“/ index”,method = RequestMethod.GET)分配“其余的URL”.

例如/ web / index,/ web / error;以及:/ api / v1 / something,/ api / v1 / something-else.

拥有一个很好的软件包约定将帮助您不要迷失这么多控制器.

注意:请记住,您不需要在每个方法中重复相同的上下文,而只需要“其余的URL”.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读