개발자

스프링부트에서 쿠키를 활용하여 조회수 확인

2023년 11월 27일조회 682

스프링부트 프로젝트에서 게시글 및 페이지 방문자 카운팅시쿠키를 사용하려고 합니다 질문1: 처음에는 세션을 사용했지만, JWT로 로그인한 경우 세션이 초기화되어 방문한 게시글의 ID를 제대로 불러오지 못하는 문제가 발생하여 쿠키로 전환했습니다. -> 왜 로그인한 경우에 세션을 제대로 못 불러오는지 궁금합니다. 질문2: 방문한 게시글은 3시간 후에 다시 증가할수 있도록 하려고 합니다. 각 게시글의 수만큼 쿠키를 생성하여 maxAge로 확인하는 방법은 비효율적으로 느껴집니다. 그래서 한 쿠키에 여러 게시글의 ID를 배열로 넣어 확인하려고 합니다. 이때는 각 게시글의 시간 확인에 어떤 방법을 사용할 수 있을까요? 감사합니다!

이 질문이 도움이 되었나요?
'추천해요' 버튼을 누르면 좋은 질문이 더 많은 사람에게 노출될 수 있어요. '보충이 필요해요' 버튼을 누르면 질문자에게 질문 내용 보충을 요청하는 알림이 가요.
profile picture
익명님의 질문

답변 1

인기 답변

김대현님의 프로필 사진

질문을 잘 이해하기 어려워서 제대로된 답변은 아닐 것 같습니다만, 아무말이나 적어봅니다. 아시겠지만, 세션도 쿠키입니다. 쿠키에 세션ID를 담아서 해당 세션ID를 기준으로 서버사이드에서 모종의 판단을 하는 거죠. 로그인 시에 세션ID를 재발급하는 로직이 있는 것 같네요. 한번 관련 문서를 찾아보세요. 방문자의 세션ID가 로그인 후에는 변경된다는 내용이 명시돼 있는지. 안되는 건 아니지만, 조회수 증가 판단을 클라이언트에 쿠키를 발급해주고 판단하는 건 제게는 어색하네요. 뭐가 됐든 방문자를 특정할 수 있는 로그인 아이디 같은 모종의 아이디가 있을 거고, 그걸 기준으로 서버사이드에서 판단하시는 걸 어떠실까요? 굳이 클라이언트 사이드에 모종의 판단을 시키고 싶으시면 쿠키대신 로컬스토리지/세션스토리지를 활용해보시는 것도 방법이 될 수 있겠습니다.

지금 가입하면 모든 질문의 답변을 볼 수 있어요!

현직자들의 명쾌한 답변을 얻을 수 있어요.

또는

이미 회원이신가요?

목록으로
키워드로 질문 모아보기

실무, 커리어 고민이 있다면

새로운 질문 올리기

지금 가입하면 모든 질문의 답변을 볼 수 있어요!