라이브러리는 도서관 아닌가요

spring security 405 에러 Request methed 'POST' not supported 본문

Spring/Spring Security

spring security 405 에러 Request methed 'POST' not supported

veryhi 2022. 1. 8. 03:26

 

security 개발을 하다 보면 만날 수 있는 에러,

 

Resolved [org.springframework.web.HttpRequestMethodNotSupportedException: Request method 'POST' not supported]

 

 

 

 

 

간단한 해결 책을 알아보도록 하자.

 

 

 

 

 

1. POST 요청을 날릴 때 필요한 csrf token 값을 붙이지 않았다.

 

→ jsp의 경우,

<input type="hidden" name="${_csrf.parameterName}" value="${_csrf.token}"/>

<form> 태그 안에 추가한다.

 

→ thymeleaf의 경우,

<input type="hidden" th:name="${_csrf.parameterName}" th:value="${_csrf.token}" />

<form> 태그 안에 추가한다.

 

 

 

 

2. <form> 태그 안의 action 값을 지정해주지 않았다.

 

logout을 예로 들면,

 

<form method="post" action="/member/logout">

     . . .

</form>

 

 

 

 

 

3. csrf 토큰 값을 붙이지 않고, 단순히 로그아웃 진행

 

SecurityConfig.java의 configure 메서드 안의 http 객체에 다음과 같은 설정을 추가한다.

     .and()

          .csrf()
          .ignoringAntMatchers("/member/logout")

 

Comments