SpringBoot에 존재하지 않는 API 요청에 응답하는 커스터마이징 설정하기!!
1. 원치않는 오류페이지
- 스프링부트의 기본페이지
1. 배경 @ControllerAdvice
- 적절한 에러 페이지를 응답해야 한다는 생각에 추가적으로 코드를 분석하기 시작했다.
- SQL 오류의 경우, 오류의 정보가 클라이언트에 노출된다!
- SQL Injection 공격으로 개인정보 유출사고
- 클라이언트에게 에러메시지 정보를 모두 공개할 필요가 없다
2. 설정방법
- resources - application.properties
spring.mvc.throw-exception-if-no-handler-found=true
spring.web.resources.add-mappings=false
- 예외 핸들러를 찾지 못할경우, 예외를 던진다.
- 핸들러 매핑을 사용하지않음!
- WebMvcConfigurer
- 사용할 정적 자원을 추가해준다.
- files 위치에 이름을 설정할 수 있다.
- 사용 예) files/js/lobby.js
3. 적용완료
- 내가 적용한 에러페이지가 발생한다!
1. 원치않는 오류페이지
1. 배경 @ControllerAdvice
- 적절한 에러 페이지를 응답해야 한다는 생각에 추가적으로 코드를 분석하기 시작했다.
- SQL 오류의 경우, 오류의 정보가 클라이언트에 노출된다!
- SQL Injection 공격으로 개인정보 유출사고
- 클라이언트에게 에러메시지 정보를 모두 공개할 필요가 없다
2. 설정방법
- resources - application.properties
spring.mvc.throw-exception-if-no-handler-found=true
spring.web.resources.add-mappings=false
- 예외 핸들러를 찾지 못할경우, 예외를 던진다.
- 핸들러 매핑을 사용하지않음!
2. WebMvcConfigurer
- 사용할 정적 자원을 추가해준다.
- files 위치에 이름을 설정할 수 있다.
- 사용 예) files/js/lobby.js
3. 적용완료
'공부 > Java' 카테고리의 다른 글
전략패턴과 상태패턴의 공통점과 차이점 (0) | 2022.06.06 |
---|---|
IntelliJ 디버깅 해보기 (0) | 2022.05.06 |
[JAVA] 한번에 두 개 이상 테스트하기 (0) | 2022.04.30 |
전략패턴 vs 상태패턴 (0) | 2022.04.26 |
[JAVA] 코드 순서 (0) | 2022.04.03 |
댓글