💡 form이 method가 "POST" 일 때, 서버에서 꼭 해야할 것이 있습니다!
POST 방식으로 데이터를 전송할 때, 특히 폼에 한글이나 다른 비 ASCII 문자가 포함 될 경우, 서버가 이 데이터를 올라브게 해석하기 위해서는 문자 인코딩 설정이 필요합니다. 만약 이 설정을 하지 않으면, 폼 데이터가 깨진 문자로 해석될 수 있습니다.
⭐ 그래서 꼭 해야할 것 !!
폼 데이터에 한글 등 비 ASCII 문자가 포함될 가능성이 있으면 반드시 req.setCharacterEncoding("UTF-8"); 을 설정해주는 것이 좋습니다. 이는 서버가 폼 데이터를 정확하게 해석할 수 있도록 보장합니다.
만약, 서버나 애플리케이션 전체가 이미 UTF-8로 설정되어 있고, 모든 데이터가 UTF-8로 이루어지고 있다면 생략해도 문제가 없을 수 있습니다. 하지만 이는 서버 설정에 따라 다를 수 있으므로 일반적으로는 설정해주는 것이 안전합니다.
🦊 언제 설정해야 하나요?
req.setCharacterEncoding("UTF-8");은 폼 데이터가 서버로 전달되기 전에 설정되어야 합니다. 따라서 이 코드는 보통 doPost 메서드의 맨 처음에 위치해야합니다.