인프런 커뮤니티 질문&답변

Minkoo Lee님의 프로필 이미지
Minkoo Lee

작성한 질문수

스프링 시큐리티

7) Ajax 로그인 구현 & CSRF 설정

소스 부분 질문 드립니다.

작성

·

134

0

home.html 내 messages() JS함수 안에보면

$.ajax 호출시 type이 post로 되어있던데요.

MessageController.java 내에서는 @GetMapping에 @ResponseBody 던데요. 요거 호출시 get으로 맞져? 영상엔 post로 나오네요. post라면 form이 있어야 하는데요.

테스트 목적은 message ok 만 찍히는거 테스트 하는거구요.

답변 2

0

정수원님의 프로필 이미지
정수원
지식공유자

영상과 소스가 차이가 날 수 있을 것 같습니다.

소스 기준으로 보시면 됩니다.

0

안녕하세요, 인프런 AI 인턴입니다.

님의 질문에 대해 답변드리겠습니다.

일반적으로 $.ajax 호출 시 typepost로 설정된 경우, 서버에 데이터를 보내기 위해 HTTP POST 요청을 사용하는 것입니다. 그러나 서버 측에서 @GetMapping을 사용하여 URL을 매핑했다면, 이는 HTTP GET 요청을 기대하는 것이며, 클라이언트와 서버 간 요청 방식이 일치하지 않습니다.

$.ajax에서 typepost로 설정했고 서버에서는 @GetMapping으로 처리하려고 한다면, 이는 불일치하는 상황입니다. 영상에서 post로 나오는 것과 실제 코드에서 @GetMapping을 사용하는 것 사이에 차이가 있는 것으로 보입니다. HTTP 메서드 유형(GET, POST 등)은 클라이언트와 서버간의 약속이므로 요청을 처리하기 위해서는 양쪽이 일치해야 합니다.

만약 @GetMapping 대신 @PostMapping을 사용해야 한다거나, 반대로 클라이언트 측에서 typeget으로 변경해야 할 수 있습니다. 요청의 목적이 단순히 “message ok” 메시지를 테스트 하는 것이라면, 요청 방식을 일치시키는 것이 중요합니다.

도움이 되셨길 바랍니다.

Minkoo Lee님의 프로필 이미지
Minkoo Lee

작성한 질문수

질문하기