|
@@ -6,6 +6,11 @@ import org.springframework.context.annotation.Bean;
|
|
|
import org.springframework.context.annotation.Configuration;
|
|
import org.springframework.context.annotation.Configuration;
|
|
|
import org.springframework.http.HttpMethod;
|
|
import org.springframework.http.HttpMethod;
|
|
|
|
|
|
|
|
|
|
+import java.time.LocalDateTime;
|
|
|
|
|
+import java.time.ZoneId;
|
|
|
|
|
+import java.time.ZonedDateTime;
|
|
|
|
|
+import java.time.format.DateTimeFormatter;
|
|
|
|
|
+
|
|
|
/**
|
|
/**
|
|
|
* @ProjectName: distributedSystemLearn
|
|
* @ProjectName: distributedSystemLearn
|
|
|
* @FileName: GatewayConfig
|
|
* @FileName: GatewayConfig
|
|
@@ -13,31 +18,34 @@ import org.springframework.http.HttpMethod;
|
|
|
* @Data:2025/9/10 16:33
|
|
* @Data:2025/9/10 16:33
|
|
|
* @Description: gateway配置类
|
|
* @Description: gateway配置类
|
|
|
*/
|
|
*/
|
|
|
-//@Configuration
|
|
|
|
|
|
|
+@Configuration
|
|
|
public class GatewayConfig {
|
|
public class GatewayConfig {
|
|
|
@Bean
|
|
@Bean
|
|
|
public RouteLocator myRouteLocator01(RouteLocatorBuilder builder){
|
|
public RouteLocator myRouteLocator01(RouteLocatorBuilder builder){
|
|
|
//根据配置文件改写为配置类的形式
|
|
//根据配置文件改写为配置类的形式
|
|
|
RouteLocatorBuilder.Builder routes = builder.routes();
|
|
RouteLocatorBuilder.Builder routes = builder.routes();
|
|
|
routes.route("member10001",r-> {
|
|
routes.route("member10001",r-> {
|
|
|
|
|
+ ZonedDateTime zonedDateTime = ZonedDateTime.of(2025, 9, 10, 0, 0, 0, 0, ZoneId.systemDefault());
|
|
|
return r
|
|
return r
|
|
|
//路径断言
|
|
//路径断言
|
|
|
.path("/member-gateway/member")
|
|
.path("/member-gateway/member")
|
|
|
.and()
|
|
.and()
|
|
|
//请求方法断言
|
|
//请求方法断言
|
|
|
.method(HttpMethod.GET)
|
|
.method(HttpMethod.GET)
|
|
|
|
|
+ .and()
|
|
|
|
|
+ .after(zonedDateTime)
|
|
|
//过滤器重写路径
|
|
//过滤器重写路径
|
|
|
.filters(fn ->{
|
|
.filters(fn ->{
|
|
|
//路径重写
|
|
//路径重写
|
|
|
return fn.rewritePath("/member-gateway/(?<segment>.*)","/member-provider/$\\{segment}");
|
|
return fn.rewritePath("/member-gateway/(?<segment>.*)","/member-provider/$\\{segment}");
|
|
|
})
|
|
})
|
|
|
//转发目标地址
|
|
//转发目标地址
|
|
|
- .uri("http://localhost:10001");
|
|
|
|
|
|
|
+ .uri("lb://member-service-provider");
|
|
|
|
|
|
|
|
});
|
|
});
|
|
|
return routes.build();
|
|
return routes.build();
|
|
|
}
|
|
}
|
|
|
- @Bean
|
|
|
|
|
|
|
+ //@Bean
|
|
|
public RouteLocator myRouteLocator02(RouteLocatorBuilder builder){
|
|
public RouteLocator myRouteLocator02(RouteLocatorBuilder builder){
|
|
|
RouteLocatorBuilder.Builder routes = builder.routes();
|
|
RouteLocatorBuilder.Builder routes = builder.routes();
|
|
|
routes.route("member10002",r->{
|
|
routes.route("member10002",r->{
|