정구리의 우주정복
[Spring] spring cloud gateway global filter 본문
반응형
오늘은 게이트웨이에 왕 간단한 글로벌 필터를 만들어보려 한다
api 요청 후 글로벌필터를 거친 후에 api 를 실행하는 형태 !
GlobalFilter.java 파일
@Component
@Slf4j
public class GlobalFilter extends AbstractGatewayFilterFactory<GlobalFilter.Config> {
public GlobalFilter() {super(Config.class);}
@Override
public GatewayFilter apply(Config config) {
//Custom Pre Filter
return (exchange, chain) ->{
ServerHttpResponse response = exchange.getResponse();
//Custom Post Filter
return chain.filter(exchange).then(Mono.fromRunnable(()->{
if(config.postLogger()) log.info("Gateway global filter : response status code -> {}", response.getStatusCode());
}));
};
}
public record Config(boolean postLogger) {}
}
이렇게 생성한 후 api 를 실행해보면
api 가 실행되고 글로벌 필터에 적용한 로그가 찍혀있는것을 볼 수 있다
반응형
'JAVA > PROJECT' 카테고리의 다른 글
Comments