개발을 하면서 Postman으로 Post method를 테스트 하려고 하는 중에 있었다. 하지만 Get method는 잘 호출되는 반면, Post method의 경우 다음과 같은 에러가 발생했다. 문제가 일어난 이유는 다음과 같았다. Spring Security는 기본적으로 CSRF 보호를 활성화합니다. CSRF 토큰이 요청에 포함되지 않은 경우 "403 Forbidden" 오류가 발생합니다. Postman에서 요청을 보낼 때 CSRF 토큰을 포함했는지 확인해야 합니다. 하지만 현재 프로젝트에서 CSRF 토큰을 사용하고 있지 않기 때문에, disable로 해당 문제를 해결해줬다. 변경 전 @Bean public SecurityFilterChain filterChain(HttpSecurity http) t..
Verification.java 하단의 코드는 Verification Domain 코드이다. Verification의 경우 ParticipationChallenge를 객체로 가지고 있다. 이때 Spring Data JPA의 파생된 쿼리 메서드 명명 규칙에 따라 VerificationRepository에서 ParticipationChallenge의 id 값을 불러오려면 어떻게 해야할까? @Entity @Getter @NoArgsConstructor public class Verification { @Id @GeneratedValue(strategy = GenerationType.IDENTITY) private Long id; @Column(nullable = false) private String imag..
1️⃣ 서블릿이란? 자바 서블릿은 자바를 사용하여 웹페이지를 동적으로 생성하는 서버측 프로그램 혹은 그 사양을 말하며, 흔히 "서블릿"이라 불린다. 자바 서블릿은 웹 서버의 성능을 향상하기 위해 사용되는 자바 클래스의 일종이다. 🔹 웹 애플리케이션 서버를 직접 구현하면? 서버에서는 어떤 업무를 처리해야 할까? 서버 TCP/IP 연결 대기, 소켓 연결 HTTP 요청 메시지를 파싱해서 읽기 POST 방식, /save URL 인지 Content-Type 확인 HTTP 메시지 바디 내용 파싱 username, age 데이터를 사용할 수 있게 파싱 저장 프로세스 실행 비즈니스 로직 실행 데이터베이스에 저장 요청 HTTP 응답 메시지 생성 시작 HTTP 시작 라인 생성 Header 생성 메시지 바디에 HTML 생성..
해당 게시글은 김영한님 MVC 강의 1편을 듣고 작성한 게시글입니다! 1️⃣ Model 객체란? Model 객체는 Controller에서 생성된 데이터를 담아 View로 전달할 때 사용하는 객체이다. MVC 패턴에서 Model의 역할을 수행한다. 2️⃣ @RequestParam 어노테이션 @ModelAttribute를 알아보기 전에 @RequestParam에 대해 알아보자. @PostMapping("/add") public String addItemV1(@RequestParam String itemName, @RequestParam int price, @RequestParam Integer quantity, Model model){ Item item = new Item(); item.setItemName..