• 카테고리

    질문 & 답변
  • 세부 분야

    풀스택

  • 해결 여부

    미해결

세션 질문드립니다.

22.01.26 16:48 작성 조회수 112

0

로그인 처리를 한뒤에 세션을 확인해보면 passport : { user: 1 } 이런식으로 들어가있는데 , socket에서 세션을 확인해보면 해당부분이 없습니다. 왜그럴까요?

답변 1

답변을 작성해보세요.

1

아까 cookieParser를 떼신 거 아니였나요? 쿠키파서를 떼면 세션이 제대로 작동하지 않습니다.

쿠마스님의 프로필

쿠마스

질문자

2022.01.26

cookieParser 붙여도 똑같이 작동됩니다.

https://okky.kr/article/836395 해당 내용을 살펴보니 Socket.io와 Express의 세션이 서로 개별적으로 관리되는것 같습니다. ㅠㅠ

sleact에 보면 프론트단에서 로그인시      

socket?.emit('login', { id: userData?.id, channels: channelData.map((v) => v.id) });

이렇게 직접 전송을 하던데, 혹시 클라이언트 쪽에서 userData.id를 변조해서 보낼수 있진 않을까요?

 

 

쿠마스님의 프로필

쿠마스

질문자

2022.01.26

생각을 다르게해서 api 요청을 보낼때 socket.io의 id를 담는것으로 처리했습니다!