Spring
[Spring] Postman 404, 405 Error
Jwanna
2022. 10. 24. 10:14
Spring MVC를 공부하던 중 Postman에서 에러가 발생했다.
🚨 404 Error
이유는 Spring 구동 파일인 Application.java 파일의 경로 문제였다.
자세한 원인은 Application.java의 @SpringBootApplication
Annotation을 보면 확인할 수 있다.
@Target(ElementType.TYPE)
@Retention(RetentionPolicy.RUNTIME)
@Documented
@Inherited
@SpringBootConfiguration
@EnableAutoConfiguration
@ComponentScan(excludeFilters = { @Filter(type = FilterType.CUSTOM, classes = TypeExcludeFilter.class),
@Filter(type = FilterType.CUSTOM, classes = AutoConfigurationExcludeFilter.class) })
public @interface SpringBootApplication {
...
}
Application.java 파일은 기본적으로 @SpringBootApplication
이 작성되어 있는데,
@SpringBootApplication
은 @ComponentScan
을 포함하고 있다.
기본적으로 @ComponentScan
은 하위 패키지만 스캔하므로,
작성된 파일의 최상위 패키지에 위치해야 스캔이 가능하다.
변경후 실행을 했더니?
🚨 405 Error
현재 내가 작성한 코드의 POST
기능에는 URI Path를 받아오지 않는데,
URI Path를 입력해서 발생한 문제이다.
@PostMapping
public ResponseEntity postMember(...) {
...
}
@PatchMapping("/{member-id}")
public ResponseEntity patchMember(...) {
...
}
또는 POST
를 사용해야 하는데, PATCH
나 GET
을 사용하는 등 잘못된 HTTP Method를 사용해도 405 Error가 발생한다.