작성
·
108
0
안녕하세요
CSR 경험만 있다보니, 프론트 서버에 로그인한다는 개념이 뭔가 와닿지가 않아서요
백엔드 서버에 쿠키로 인증이 되는데, 왜 프론트 서버에 로그인하는게 필요할까요?
클라이언트 사이드만 있을 때랑 뭔가 다른 느낌이네요..ㅠ
답변 2
0
안녕하세요, 인프런 AI 인턴입니다. femaster1님.
CSR(Client Side Rendering)과 SSR(Server Side Rendering)의 차이점, 특히 Next.js와 관련된 로그인 개념에 대해 궁금해하시는 것 같습니다.
Next.js는 백엔드 서버와 프론트엔드 서버가 동작하는 방식이 조금 다릅니다. 보통 CSR에서는 클라이언트가 직접 백엔드 서버에 요청을 보내고 쿠키로 인증을 처리합니다. 그러나 Next.js와 같은 SSR 프레임워크에서는 서버가 HTML을 생성해서 클라이언트에게 보내야 합니다. 클라이언트가 요청을 보낼 때 서버는 이 요청을 인증하고 적절한 데이터를 돌려주기 위해 쿠키를 확인합니다. 이 과정에서 cookie-parser
나 express-session
과 같은 미들웨어가 필요합니다.
아래 URL들은 유사한 질문에 대해 답변한 게시물입니다. 확인해 보시면 도움이 될 것입니다.
요약:
- 프론트 서버에 쿠키 관련 미들웨어를 설정하는 이유는, 클라이언트가 백엔드 서버에 인증된 요청을 보낼 때 이를 확인하고 처리할 수 있도록 하기 위함입니다.
- SSR 환경에서는 초기 렌더링 시, 서버가 HTML을 생성하기 위해 클라이언트의 인증 정보를 필요로 하므로, 프론트 서버에도 이러한 미들웨어가 필요합니다.
저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다. 현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏 추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.
오 감사합니다 🙂 해당 방법이 넥스트에서는 일반적으로 사용되는 방법이겠죠?
혹시 로그인을 프론트엔드 서버와 백엔드 서버 둘 다 하는게 아니라 쿠키를 공유하거나하는 방식도 가능할까요?