我目前正在使用spring cloud gateway项目构建简单的api网关,计划是将路由持久化到mongodb中,然后刷新,以便新路由可用。我做了这样简单的事情来从 mongo 获取我的路线。
@Bean
public RouteLocator routeLocator(RouteLocatorBuilder builder){
List<CreateAPIRequest> apiRequestList = repository.findAll();
RouteLocatorBuilder.Builder routeLocator = builder.routes();
for (CreateAPIRequest request: apiRequestList) {
routeLocator
.route(r-> {
r.path("/"+request.getProxy().getListenPath())
.filters(f->f.stripPrefix(1))
.uri(request.getProxy().getTargetUrl())
});
}
return routeLocator.build();
}
Run Code Online (Sandbox Code Playgroud)
我能够在数据库中创建新路线,但无法即时刷新。
我需要了解如何动态刷新路线。
谢谢