개발자
Locacl Storage에 유저 정보와 post를 저장해도 될까요 Local storage는 보안상 취약한 부분이 있다고 해서 조금 불안해서 질문드립니다
답변 2
말씀하신대로 보안상의 이슈로 인해 로컬 스토리지에 유저 정보를 그대로 담는것은 좋지 않을 것 같습니다 ! 개인 혹은 팀 프로젝트를 진행하고 계신거라면 로그인시 받게되는 액세스 토큰같은 것을 담는 용도로 많이 사용하게 될 것 같아요 ! 또, 다크모드와 같은 state를 로컬 스토리지에 담아두고 사용자가 페이지에 재접속했을 때 기존 테마가 유지되도록 한다던가 하는 용도로 사용해볼 수 있을 것 같습니다. 질문자님께서 로컬 스토리지에 user, post 데이터를 담으시려는게 전역적으로 관리해서 다른 페이지에서도 이를 사용하고 싶으신 것이라면, react-query의 캐싱 기능을 이용하시거나 recoil, zustand 같은 상태관리 툴을 이용해보시는게 좋을 것 같습니다 :)
익명
작성자
2024년 01월 13일
리엑트 쿼리를 이용하는 이유가 리엑트 쿼리가 서버에 요청을 보낼때 지금데이터가 변경사항이 있는지 없는지 확인해주는 이점 때매 쓰는건가요?
정 훈
FE • 2024년 01월 13일
리액트 쿼리는 주로 서버 스테이트 ( 서버 측에서 받아온 데이터 ) 를 관리하는데 사용합니다. 이런 툴이 제공하는 강력한 기능 중 하나가 '캐싱' 입니다. 리액트 쿼리를 기본적으로 GET 요청을 통해 받아온 데이터를 자동으로 캐싱하는 기능을 제공하고 있습니다. 이를 통해서 캐싱된 데이터를 다른 페이지에서도 사용할 수 있는데요, 예를 들어, 유저 정보의 경우 처음 사용자가 로그인 했을 때 userQuery ( 데이터를 보관하는 곳을 Query라고 칭하겠습니다. ) 에 캐싱하여 보관하고, 이를 마이페이지와 같은 필요한 곳에서 가져다 사용할 수 있습니다. 캐싱 데이터를 사용한다는 것의 장점은 같은 데이터에 대해 동일한 요청을 보내지 않아서 불필요한 리소스 낭비를 방지할 수 있다는 것입니다. 일반적으로 유저 정보의 경우는 사용자가 정보를 수정하지 않는 한 변동될 일이 거의 없습니다. 이런 데이터의 경우는 매번 요청을 보내 가져오는 것 보단 캐싱된 데이터를 가져와서 사용하는게 좋겠네요 !
지금 가입하면 모든 질문의 답변을 볼 수 있어요!
현직자들의 명쾌한 답변을 얻을 수 있어요.
이미 회원이신가요?
지금 가입하면 모든 질문의 답변을 볼 수 있어요!