728x90
반응형
# Spring Gateway에서 yml 파일을 사용하여 필터를 적용하는 방법에 대해서 알아보자.
1. 기존에 작성했던 JAVA 파일에서 @어노테이션 부분을 주석으로 막아준다.
- FirstServiceConroller와 SecondServieController에 아래의 코드를 추가한다.
@GetMapping("/message")
//메세지라는 메소드가 실행됨에 있어서 "first-request" 헤더값을 받아오고, 그 값이 header안에 저장이 된다.
public String message(@RequestHeader("first-request") String header) {
log.info(header);
return "Hello World in First Service.";
- 그리고 아래와 같이 RequestMapping 정보도 수정한다.
기존에 / 경로로 설정되어 있던 정보를 아래와 같이 "/first-service" 라는 경로로 수정해 준다.
@RequestMapping("/first-service")
2. application.yml 파일을 수정한다.
server:
port: 8000
eureka:
client:
register-with-eureka: false
fetch-registry: false
service-url:
defaultZone: http://localhost:8761/eureka
spring:
application:
name: apigateway-service
cloud:
gateway:
routes:
- id: first-service
uri: http://localhost:8081/ #http://127.0.0.1:8081/first-service/welcome #이동될 주소
predicates:
- Path=/first-service/** #사용자가 입력한 조건값
filters:
- AddRequestHeader=first-request, first-request-header2 #앞에값이 키값이고 뒤에값이 벨류이다.
- AddResponseHeader=first-response, first-response-header2 #앞에값이 키값이고 뒤에값이 벨류이다.
- id: second-service
uri: http://localhost:8082/ #http://127.0.0.1:8082/second-service/welcome #이동될 주소
predicates:
- Path=/second-service/** #사용자가 입력한 조건값
filters:
- AddRequestHeader=second-request, second-request-header2 #앞에값이 키값이고 뒤에값이 벨류이다.
- AddResponseHeader=second-response, second-response-header2 #앞에값이 키값이고 뒤에값이 벨류이다.
3. postman 프로그램을 사용하여 데이터 값을 확인한다.
- Budy부분을 확인해 봅시다. 정상적으로 문자가 출력된것을 확인 할 수 있다.
- 헤더부분을 확인하면 아래와 같은 정보가 출력된다.
- 다음시간에는 사용자 정의 필터에 대해서 알아보자.
728x90
반응형
'MSA (MicroServiceArchitecture) > Eureka & Spring Cloud Gateway' 카테고리의 다른 글
MSA (GlobalFilter) (0) | 2021.06.18 |
---|---|
MSA Spring (CustomFilter) (0) | 2021.06.18 |
MSA (Spring Gateway 필터적용_01) (0) | 2021.06.17 |
MSA (Spring Cloud Gateway 프로젝트 생성) (0) | 2021.06.17 |
MSA (Zuul Filter + Log 찍기) (0) | 2021.06.17 |