我使用Spring启动与网络通量和删除嵌入的tomcat依赖从初学者网络,我想添加基本上下文路径为我的应用程序,有什么办法我可以做??我需要这个,因为我有在kubernetes集群和重定向基于上下文路径的ingrees属性。
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
<exclusions>
<exclusion>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-tomcat</artifactId>
</exclusion>
</exclusions>
不能同时使用spring web和spring webflux依赖项。如果这样做,spring将优先考虑spring web,webflux过滤器将不会在启动时加载。
在启动期间,spring会尝试为您创建正确的ApplicationContext。如本文所述,如果Spring MVC(Web)位于类路径上,它将优先考虑此上下文。
Spring Boot应用程序要么是传统的web应用程序,要么是webflux应用程序。不能两者兼而有之。
ContextPath不是反应式编程中使用的东西,因此您必须过滤每个请求并在每个请求上重写路径。
这应该是可行的,它是一个组件webfilter,拦截每个请求,然后添加您在应用程序中定义的上下文路径。属性
@Component
public class ContextFilter implements WebFilter {
private ServerProperties serverProperties;
@Autowired
public ContextFilter(ServerProperties serverProperties) {
this.serverProperties = serverProperties;
}
@Override
public Mono<Void> filter(ServerWebExchange exchange, WebFilterChain chain) {
final String contextPath = serverProperties.getServlet().getContextPath();
final ServerHttpRequest request = exchange.getRequest();
if (!request.getURI().getPath().startsWith(contextPath)) {
return chain.filter(
exchange.mutate()
.request(request.mutate()
.contextPath(contextPath)
.build())
.build());
}
return chain.filter(exchange);
}
}
但这仅在您的应用程序作为Spring反应式应用程序加载时才有效。
我通过将上下文路径设置为/myservice来运行我的springboot应用程序。这将导致附加在URL处公开的所有执行器endpoint-http://localhost:8080/myservice/actuator/,而我只想要http://localhost:8080/actuator/.有没有办法告诉springboot忽略将上下文路径附加到执行器endpoint(通过Dispatche
我正在尝试使用sping-boot-starter-webflow和reactive Netty创建sping-boot-2 REST api。我正在尝试根据要在Spring-Boot-2中定义的application.yml中定义的新属性设置上下文路径。 然而,它看起来像网络流量,Netty不使用/识别application.yml.中定义的这个属性 如果我使用spring boot start
我已经使用Spring初始值设定项、嵌入式Tomcat、Thymeleaf模板引擎和作为可执行JAR文件的包生成了一个Spring Boot web应用程序。 使用的技术: Spring启动2.0.0。M6,Java8, Maven 这是我的安全配置 在我的 但当我在http://localhost:1234/iberiaWebUtils,而不是去http://localhost:1234/ibe
在 Blade 2.0.9 版本后加入了 RouteContext 这个类,作为路由的上下文操作。其本质是封装了 Request 和 Response,所以使用起来和它们的 API 是相同的,下面列举一下包含的方法列表。 请求相关 #request() #method() #uri() #keepAlive() #session() #isIE() #header(String headerNam
本文向大家介绍详解SpringBoot下文件上传与下载的实现,包括了详解SpringBoot下文件上传与下载的实现的使用技巧和注意事项,需要的朋友参考一下 SpringBoot后台如何实现文件上传下载? 最近做的一个项目涉及到文件上传与下载。前端上传采用百度webUploader插件。有关该插件的使用方法还在研究中,日后整理再记录。本文主要介绍SpringBoot后台对文件上传与下载的处理。 单文
我一直在试图找到一种为webflux应用程序设置上下文路径的方法。我知道我可以使用 如果我部署一个servlet,但我希望使用webflux实现它,而不必显式地向每个路由添加路径或使用MVC。