spring boot我在application.yml文件中配置了server:contextPath: /api访问静态资源时需要在前面加上/api,怎样可以不加这个/api也能正常访问
1 回答
慕运维8079593
TA贡献1876条经验 获得超5个赞
设置了contextPath那应用下所有的资源都只能在contextPath目录下访问了,可以使用反向代理来重写URL也是可以做到的。
当然你如果将contextPath设置为/在api前面增加前缀,这种方式会比较简单。
比如下面的这种方式。增加一个servlet专门用于api地址访问。
@Bean
public ServletRegistrationBean apiV1ServletBean(WebApplicationContext wac) {
DispatcherServlet ds = new DispatcherServlet(wac);
ServletRegistrationBean bean = new ServletRegistrationBean(ds, "/api/v1/*");
bean.setName("api-v1");
return bean;
}
添加回答
举报
0/150
提交
取消