@RequestMapping 질문드립니다.
475
55 asked
@RequestMapping만 붙인 기존 상태에서 postman으로 같은 url로 GET, POST 요청을 보내도 동일하게 성공하는 것을 확인했습니다.
근데 GET, POST만 되고, PUT, PATCH, DELETE는 안되더라구요. 혹시 GET, POST만 되는 다른 이유가 있을까요?
7:10 부터 관련 내용입니다!
(밑에 AI 답변이 있긴하지만, 다른 질문에 대한 답변을 추천해준 것 같습니다)
Answer 2
2
안녕하세요
저도 궁금해서 찾아보니 아래와 같이 JSP는 GET, POST, HEAD에 대해서만 허용된다는 것을 알 수 있었습니다. 중단점을 찍어서 추적해보니 "JSPServlet" 클래스에서 아래와 같은 오류를 발생시키고 있었습니다.
Method Not Allowed HTTP Status 405 - JSPs only permit GET POST or HEAD
오류를 검색해보니 다음과 같은 링크를 발견할 수 있었습니다.
https://stackoverflow.com/questions/23886941/http-status-405-jsps-only-permit-get-post-or-head
정리하자면, Controller에서 모든 메서드의 요청이 받아지는 것이 맞지만 JSP 페이지를 렌더링하는 과정에서 Method를 검사하고 오류를 반환하는 것입니다.
감사합니다.
2
추가로 응답 헤더의 Allow의 값을 보니 OPTIONS까지 허용되는 것으로 보입니다.
그러나 HEAD와 OPTIONS는 응답 본문이 비어져 오기 때문에 페이지를 반환 받는 용도로는 사용할 수 없을 것 같습니다.HEAD : 서버는 헤더 정보만을 반환하고 본문은 반환하지 않음. (리소스의 메타데이터를 확인, 리소스가 존재하는지, 그리고 최근에 변경되었는지 등을 확인할 때 사용)
OPTIONS : 특정 리소스에 대해 서버가 지원하는 HTTP 메서드를 확인하는 데 사용됨. 응답은 일반적으로 리소스에 대해 허용되는 메서드를 나타내는 "Allow" 헤더를 포함하며, 본문은 포함하지 않음.
0
안녕하세요, 인프런 AI 인턴입니다.
재영님의 질문과 유사한 내용의 질문에 답변한 경우가 있어 해당 정보를 공유 드립니다. @RequestMapping 어노테이션을 사용할 때 특정 HTTP 메소드로 제한하지 않으면, 기본적으로 모든 HTTP 메소드(GET, POST, PUT, PATCH, DELETE 등)에 대해 요청을 처리할 수 있습니다. 그러나 재영님의 경우 PUT, PATCH, DELETE 요청이 처리되지 않는 상황에 대한 구체적인 이유는 다양한 요인에 기인할 수 있습니다. 구체적인 상황을 분석하기 위해서는 추가 정보가 필요할 수 있습니다.
이와 관련하여 강의 중에 @RequestMapping으로 설정한 부분에서 HTTP 메소드를 명시적으로 지정하여 변경하는 예시에 대한 질문이 있었고, 그에 대한 답변이 있으니 아래 링크를 통해 확인해 보시기 바랍니다.
강의명: 스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술
질문 제목: 질문있습니다!!
질문 내용과 답변 보기
위의 링크에서 @RequestMapping과 HTTP 메소드에 대한 더 자세한 내용을 확인하실 수 있습니다.
servlet과 container에 대한 질문입니다
0
19
1
api를 어느 컨트롤러에 작성해야하는지는 어떤 기준으로 해야하나요?
0
62
1
jsp 의존성 수정 요청
0
75
2
요즘 웹 서버가 주로 사용되는 이유는 SPA 구조 때문일까요 ?
0
142
1
save() 메서드 문의
0
65
1
절대 경로로 templates/basic 하위 파일 열면 css 적용 안되는 현상
0
99
1
request-body-json
0
83
2
MVC 패턴의 적용 단위
0
94
1
RequestMapping을 이용한 핸들러, 어댑터
0
118
2
save 후 결과화면
0
86
2
jsp를 이용한 view
0
97
1
application.properties에 debug 추가해도 결과가 똑같습니다.
0
174
1
수업 코드 제공 관련 문의
0
96
2
RequestMappingHandlerAdapter의 Controller 호출 과정
0
98
3
파일 오픈 시
0
68
1
스프링 배치 관련
0
77
1
@RequestParam의 defaultValue가 blank 값도 처리하는 지 여부
0
112
1
postman으로 /request-body-json-v1 호출시 500 error
0
94
1
프론트엔드와 백엔드의 mvc, rest api에 대한 질문
0
77
1
모델의 역할과 계층 분리에 대한 이해 차이 + 추가질문
0
111
1
console log 출력 관련 질문입니다.
0
73
1
애플리케이션이 실행 되지 않습니다 ㅠㅠㅠ
0
137
1
html 변경하는 부분 적용 문제
0
100
1
한글 깨짐
0
76
2

