inflearn logo
강의

Course

Instructor

Microservice Application (MSA) Development with Spring Cloud

Spring Cloud Gateway - Applying Global Filter ➀

custom, global filter yaml파일이 아닌 자바 소스에 설정하는 방법 문의드립니다.

550

parkht

20 asked

1

안녕하세요. 먼저 좋은 강의 만들어주셔서 감사합니다.

덕분에 MSA, Spring Cloud에 대한 기초를 잘 잡아가고 있습니다.

제가 질문드리고자 하는 내용은

이번 강의에서 만든 CustomFilter, Global Filter 를 application.yml파일이 아닌 사전에 만들었던 FilterConfig.java에서 설정하는 방법입니다.

CustomFilter, , Global Filter를 빈으로 주입받은 후에 필터를 넣으려고 했는데 타입이 맞지 않는 메서드만 제공하고 있는 것 같아서요.

괜찮으시다면 소스 추가 부탁드립니다.

감사합니다.

JPA spring-boot spring-cloud architecture Kafka msa

Answer 2

2

Dowon Lee

안녕하세요, 이도원입니다. 

FilterConfig에서 기존에 생성하셨던 Filter 클래스(CustomFiler, AuthorizationHeaderFilter 등)를 필터로 등록하실려면 아래와 같이 작업해 보시기 바랍니다. (gatewayRoute 메소드의 filter() 부분)

@Configuration
public class FilterConfig {
Environment env;

public FilterConfig(Environment env) {
this.env = env;
}

@Bean
public RouteLocator gatewayRoutes(RouteLocatorBuilder builder, AuthorizationHeaderFilter myfilter) {

return builder.routes()
.route(r -> r.path("/first-service/**")
.filters(f -> f.addRequestHeader("first-request", "first-request-header")
.addResponseHeader("first-response", "first-response-header")
.filter(myfilter.apply(new AuthorizationHeaderFilter.Config())))
.uri("http://localhost:8081"))
.route(r -> r.path("/second-service/**")
.filters(f -> f.addRequestHeader("second-request", "second-request-header")
.addResponseHeader("second-response", "second-response-header"))
.uri("http://localhost:8082"))
.build();
}

}

https://www.inflearn.com/questions/351888

감사합니다. 

0

parkht

안녕하세요!! 답변 감사드립니다!!

혹시 Global pattern 에 경우는 path를 /**로 설정하면 될까요?.

kafka 업데이트 강의 듣고 시포요

0

84

1

강의 교안

0

72

1

마이크로서비스간 통신 시, 인증 처리

0

79

1

api gateway 에서 인증 처리

0

64

1

섹션 19 질문드립니다

0

51

1

강의 자료 업데이트

0

81

1

부하분산 강의 섹션

0

56

1

강의자료는 어디에서?

0

70

1

강의 자료는 어디서 다운 받을 수 있나요?

0

109

1

전체 사용자 조회시 오류

0

57

1

혹시 pk 외 별도의 id 를 부여한 이유가 있을까요 ??

0

109

2

학습 방향

0

94

2

카프카 커넥터 사용 목적 문의

0

85

2

kafka 강의

0

107

2

서비스 디스커버리 종류

0

87

2

강의 자료에 대해서 궁금해요

0

115

2

GlobalFilter, LoggingFilter가 동작하지 않습니다.

0

89

2

Kafka Source Connect 버전 에러

0

83

2

소스커넥터는 사용안한 거 맞죠?

0

81

2

강의자료 업데이트 문의

0

94

2

강의에서 BCryptPasswordEncoder 에 역할(5-2)

0

56

1

강의 업데이트 계획이 궁금합니다.

0

111

2

MSA 애플리케이션에 Spring Web과 Spring Data JPA를 사용하는 것이 바람직한지 궁금합니다. (MSA 설계와 관련된 질문입니다)

0

160

2

어떤 것이 업데이트 된 건가요?

0

162

2