emit 관련 질문 드립니다
채팅 기능 구현 중에 해결이 안되는 문제가 있어서 질문 드립니다.
Router 내에서 req.app.get('io').of('/chat').to(chatting_id).emit('chat', message) 방식으로 소켓에 데이터를 전달할 경우 해당 chatting_id 소켓에 연결되어있는 클라이언트들에게 메세지가 전달되지 않습니다.
socket.js 안의 on에서 동일하게 chatting_id를 통해서 emit할경우 수신/발신 모두 정상적으로 진행됩니다.. chatting_id 값은 숫자 1로 동일합니다.
콘솔에 req.app.get('io').of('/chat') 까지는 객체가 잘 들어있는것을 확인했습니다.. 강의 내부에서 동작하는것과 똑같이 작성한것같은데 원인이 무엇일까요..?
라우터 파일(별도 파일로 작성 후 router.js에서 사용)
답변 2
0
아 네네
0
0
아뇨 여기는 프론트가 아닙니다. ㅠㅠ 여기는 서버에요. 저기는 네임스페이스 선언하는 부분이 아닙니다. 프론트랑 서버랑 둘 다 네임스페이스가 chatting이어야하는데 서버만 그런 것 같습니다.
0
아 프론트요.. 프론트는 포스트맨에서 접속했고,, 주소는 http://localhost:80/chatting
eventlistner로 chat 으로 선언해서 구성했습니다.
router를 이용하지 않고 소켓 내에서 event name chat으로 진행하면 연결된 유저들 사이에서 수/발신 정상적으로 진행됩니다.. 근데 router 내에서 emit 할때만 해당 메세지가 전달이 안되네요..
라우터는
이렇게 구성되어있습니다.
0
아뇨 저는 프론트를 따로 만들지 않아서,, 브라우저로 확인은 못해봤네요..
테스트용으로라도 프론트를 따로 만들어서 진행해보는게 좋을까요?
소스 단에서 제가 열심히 본다곤 했는데 별개로 이슈는 없겠죠..?
0
해결을 했는데 혹시 다른분들도 비슷한 증상으로 고생하실까봐 댓글 남깁니다.
chatting_id로 소켓 분리 시 한곳은 '1', 한곳은 1로 지정되어서 송수신이 원활히 진행되지 않았었던것으로 확인했습니다. 타입이 없으니 이런 오류도 발생하네요..ㅎㅎ
리눅스 노드 설치시 패키지
0
172
0
socket.js 에서 referer로부터 roomId를 가져올 때
0
931
3
스트리밍 방식으로 대용량 파일 업로드 & 다운로드 관련 질문
0
2297
2
a[title] 질문드립니다
0
387
1
리뉴얼 강의 및 공부 방법
0
590
1
jwt decode
0
1138
1
node.js 교과서 3판 질문드립니다
0
398
1
passport와 jwt
0
439
1
리뉴얼 강의
0
428
2
혹시 Node.js 교과서 3판 이북은 언제 나오나요?
0
359
1
몽고디비 사용자도 MYSQL부분을 들어야 하나요???
0
490
1
sql 쿼리 로그는 어떤 모듈이 작성하나요?
0
511
2
nunjucks res.render('error'); 작동을 안합니다.
0
520
1
질문있습니다.
0
349
1
multer 한글 파일 업로드시 파일명이 깨져요.
1
3545
1
수업자료는 어디있나요?
0
374
1
질문 있습니디
0
245
1
multer 사용시 file 외 name값은 못받나용?
0
430
1
코드 중복 부분 질문드립니다.
0
303
1
api 만드는 이유 질문드립니다.
0
293
1
Strategy의 done에 대해 질문드립니다.
0
374
1
안녕하세요 fs 권한 관련 질문드립니다
0
456
1
시퀄라이즈 연결질문...
0
511
2
res.setHeader vs res.cookie
0
1799
3





