-
스프링에서 restapi 만들때 주의할점java/스프링공부 2020. 7. 10. 17:56728x90
웹 브라우저에는 GET과 POST방식만 지원하고 있어서 PUT,PATCH,DELETE방식의 요청은 전송할 수 없습니다. 그래서 스프링은 HiddenHttpMethodFilter를 이용해 PUT, PATCH, DELETE방식의 요청을 할 수 있도록 해주는데요. <form:form>태그의 method 속성 값으로 지정해주면 됩니다.
<form:form action="/board/post/${board.bno}" method="DELETE"> <input type="submit" value="삭제"> </form:form>
<form:form>태그의 method값이 PUT,PATCH,DELETE인 경우에는 <form:form>가 hidden타입의 <input>태그를 추가로 생성합니다.
<form action="/board/post/${board.bno}" method="POST"> <input type="hidden" name="_method" value="DELETE"/> <input type="submit" value="삭제"> </form>
이런식으로 생성이되어 전송된다고 생각하시면 됩니다. HiddenHttpMethodFilter는 요청 파라미터에 "_method"가 있을 경우 파라미터의 value를 요청 방식으로 사용하도록 스프링 MVC의 관련 정보를 설정하는 역할을 해줍니다. 그럼 컨트롤러에서 알맞는 요청의 메서드를 찾아주기 때문에 웹 브라우저를 이용하더라도 Restful 방식으로 구현된 컨트롤러를 이용할 수 있게됩니다.728x90'java > 스프링공부' 카테고리의 다른 글
스프링부트 (0) 2022.05.04 스프링에서 ajax요청시 주의사항 (0) 2020.08.18 스프링에서 컨트롤러에서 비동기처리 (0) 2020.07.09 스프링에서 jsp랑 서블릿 역할 (0) 2020.07.09 스프링에서 controller에서 return페이지가 없는 void함수 (0) 2020.06.28